当前位置:首页 » 操作系统 » aspnet数据库实例

aspnet数据库实例

发布时间: 2023-05-01 22:04:33

A. 用axios怎样解决共享session的问题

方法/步骤

1
客户端SessionID值唯一;
对于不同的域名:主域名、子域名、跨站点域名或跨服务器域名,用户在打开页面时会产生不同的SessionID
为了使这些站点在用户登录时只登录一次,那我们就要解决SessionID的问题,必须使SessionID在这些共享Session的站点中只产生一次。而SessionID是存储在客户端的cookie之中键值为ASP.NET_SessionId的一个字符串(也可以存储在URL中,这里不作使介绍),为此只须念陪使各站点存储的SP.NET_SessionId唯一即可。

2
因每个客户端在打开时会产生一个SessionID,为此我们要做的就是重置SessionID。我们可以在继承仔亏蠢HttpMole,在结束请求时重写SessionID。
为使用以上代码,须配置下面节点项。
<httpMoles>
<add name="节点名称" type="类名全称, 程序集"/>
</httpMoles>

3
Session值的共享;
配置sessionState置节点,使用StateServer或sqlServer来实现Session共享。
为实现跨服务器共享,必须在Web.config配置:
<machineKey decryptionKey="" validationKey="" validation="SHA1" decryption="Auto"/>
并且,不同服务器上站点配置必须用相同的Web.config,各站点目录配置也要相同。

4
使用StateServer:
存储Session的服务器必须开启StateServer:ASP.NET状态服务。只有机器重起的情况下才导致Session丢失。
<sessionState cookieless="false" timeout="50" mode="StateServer" stateConnectionString="tcpip=IpAddress:42424"/>
若StateServer在本机存储,则IpAddress为:127.0.0.1;若StateServer为远程服务器,则为IpAddress为远程服务器IP地址,并且修改注册表项如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\空昌Services\aspnet_state\Parameters]
"Port"=dword:0000a5b8
"AllowRemoteConnection"=dword:00000001

5
使用SQLServer:
必须开启SQLServer代理服务,此服务负责清除过期的Session,若没有开服务,则Session不会过期。
使用SQLServer在机器重启后Session不会丢失。
Web.config配置:
<sessionState mode="SQLServer" sqlConnectionString="server=DBIpAddress; uid=myid; pwd=mypwd;"/>

6
数据库配置:
使用aspnet_regsql.exe工具
ASP.NET 2.0版本后微软提供了aspnet_regsql.exe工具可以方便的配置Session数据库.该工具位于 Web 服务器上的"系统根目录\Microsoft.NET\Framework\版本号"文件夹中.
使用举例:
aspnet_regsql.exe -S . -U sa -P 123456 -ssadd -sstype p
-S参数:
表示数据库实例名称. 可以用"."表示本机.
-U和-P参数:
表示用户名和密码.
-E参数:
可以再-U –P 与 -E中选择一组. –E表示以当前系统用户通过windows身份验证登录数据库, -U -P则是使用SqlServer用户登录数据库.
-ssadd / –ssremove 参数:
-ssadd表示是添加Session数据库, -ssremove表示移除Session数据库.
sstype 参数说明:

t
将会话数据存储到 SQL Server tempdb 数据库中。这是默认设置。如果将会话数据存储到 tempdb 数据库中,则在重新启动 SQL Server 时将丢失会话数据。

p
将会话数据存储到 ASPState 数据库中,而不是存储到 tempdb 数据库中。

c
将会话数据存储到自定义数据库中。如果指定 c 选项,则还必须使用 -d 选项包括自定义数据库的名称。

sessionState参数说明:

属性
说明

allowCustomSqlDatabase
可选的 Boolean 属性。
指定会话状态 SQL 数据库是否可以是自定义数据库(而不是 ASP.NET 默认数据库)。如果为 false,则不能指定初始目录或数据库作为 sqlConnectionString 属性的值。默认会话状态 SQL 数据库为 ASPState 数据库。有关更多信息,请参见会话状态模式。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 false。

cookieless
可选的 HttpCookieMode 属性。
指定对于 Web 应用程序使用 Cookie 的方式。
cookieless 属性可以为下列可能值之一。默认值为 UseCookies。


说明

AutoDetect
ASP.NET 确定请求浏览器或请求设备是否支持 Cookie。如果请求浏览器或请求设备支持 Cookie,则 AutoDetect 使用 Cookie 来保留用户数据;否则,将在查询字符串中使用一个标识符。如果浏览器或设备支持 Cookie,但当前禁用了 Cookie,则请求功能仍会使用 Cookie。

UseCookies
无论浏览器或设备是否支持 Cookie,都使用 Cookie 来保留用户数据。

UseDeviceProfile
ASP.NET 根据 HttpBrowserCapabilities 设置来确定是否使用 Cookie。如果 HttpBrowserCapabilities 设置指示浏览器或设备支持 Cookie,将使用 Cookie;否则,将在查询字符串中使用一个标识符。

UseUri
无论浏览器或设备是否支持 Cookie,调用功能都使用查询字符串来存储标识符。

cookieName
可选的 String 属性。
指定存储会话标识符的 Cookie 的名称。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 "ASP.NET_SessionId"。

customProvider
可选的 String 属性。
指定用于存储和检索会话状态数据的自定义会话状态提供程序的名称。该提供程序在 providers 元素中指定。仅当会话状态模式设置为 Custom 值时,才使用该提供程序。有关更多信息,请参见会话状态模式。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为空字符串 ("")。

mode
可选的 SessionStateMode 属性。
指定存储会话状态值的位置。有关更多信息,请参见会话状态模式。
mode 属性可以为下列可能值之一。默认值为 InProc。


说明

Custom
会话状态将使用自定义数据存储区来存储会话状态信息。

InProc
会话处于正在处理 ASP.NET 辅助进程的状态。

Off
会话状态被禁用。

SQLServer
会话状态将使用进程外 SQL Server 数据库来存储状态信息。

StateServer
会话状态将使用进程外 ASP.NET 状态服务来存储状态信息。

partitionResolverType
可选的 String 属性。
指定在哪里存储会话状态。如果 partitionResolverType 属性中指定了值,则忽略 sqlConnectionString 和 stateConnectionString 属性。PartitionResolverType 属性返回的连接字符串将用于每个请求,为请求的其余部分连接到适当的服务器位置。如果连接字符串无效,ASP.NET 将引发一个异常,该异常与当配置的服务器连接字符串无效时引发的异常相同。该属性用于在 SQL 或状态服务器模式下在多个后端节点上划分会话状态数据。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为空字符串。

regenerateExpiredSessionId
可选的 Boolean 属性。
指定当客户端指定了过期的会话 ID 时是否重新发出会话 ID。默认情况下,当启用了 regenerateExpiredSessionId 时,仅为 cookieless 模式重新发出会话 ID。有关更多信息,请参见 IsCookieless。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 true。

sqlCommandTimeout
可选的 TimeSpan 属性。
指定使用 SQL Server 会话状态模式的 SQL 命令的持续时间超时(秒)。持续时间超时是 SQL 命令可以处于空闲状态的时间(秒),超过此时间之后,该命令将被取消。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 0:00:30(30 秒)。

sqlConnectionString
可选的 String 属性。
为运行 SQL Server 的计算机指定连接字符串。该属性在 mode 属性设置为 SQLServer 值时是必需的。有关更多信息,请参见会话状态模式。

注意

若要在使用 SQLServer 模式时提高您的应用程序的安全性,请使用受保护的配置来加密配置的 sessionState 节,以帮助保护 sqlConnectionString 值。

默认值为 "data source=127.0.0.1;Integrated Security=SSPI"。

stateConnectionString
可选的 String 属性。
指定远程存储会话状态的服务器名称或地址以及端口。端口值必须为 42424。当 mode 为 StateServer 值时,该属性是必需的。确保运行 ASP.NET 状态服务的服务器是存储会话状态信息的远程服务器。该服务随 ASP.NET 一起安装,默认情况下为 %SystemRoot%\Microsoft.NET\Framework\VersionNumber\aspnet_state.exe。有关更多信息,请参见会话状态模式。

注意

若要在使用 StateServer 模式时提高您的应用程序的安全性,请使用受保护的配置来加密配置的 <sessionState> 节,以帮助保护 stateConnectionString 值。

默认值为 "tcpip=127.0.0.1:42424"。

stateNetworkTimeout
可选的 TimeSpan 属性。
指定 Web 服务器与状态服务器之间的 TCP/IP 网络连接可以处于空闲状态的时间(秒),超过此时间后,请求将被取消。该属性在 mode 属性设置为 StateServer 值时使用。
默认值为 10 秒。

timeout
可选的 TimeSpan 属性。
指定在放弃一个会话前该会话可以处于空闲状态的分钟数。对于进程内和状态服务器模式,timeout 属性不能设置为大于 525,601 分钟(1 年)的值。
会话 timeout 配置设置仅适用于 ASP.NET 页。更改会话 timeout 值不会影响 ASP 页的会话超时时间。同样,更改 ASP 页的会话超时时间不会影响 ASP.NET 页的会话超时时间。
默认值为 20 分钟。

useHostingIdentity

7
可选的 TimeSpan 属性。
指定在放弃一个会话前该会话可以处于空闲状态的分钟数。对于进程内和状态服务器模式,timeout 属性不能设置为大于 525,601 分钟(1 年)的值。
会话 timeout 配置设置仅适用于 ASP.NET 页。更改会话 timeout 值不会影响 ASP 页的会话超时时间。同样,更改 ASP 页的会话超时时间不会影响 ASP.NET 页的会话超时时间。
默认值为 20 分钟。

useHostingIdentity
可选的 Boolean 属性。
指定会话状态将恢复为宿主标识还是使用客户端模拟。
如果为 true,ASP.NET 将使用下列进程凭据之一来连接会话状态存储区:
宿主进程;对于 Microsoft Internet 信息服务 [IIS] 5 和 5.1 版为 ASPNET,对于 Microsoft Windows Server 2003 则为 NETWORK SERVICE。
应用程序模拟标识,当使用了以下配置时使用此凭据:
<identity impersonate="true" userName="user" password="pwd" />
如果为 false,ASP.NET 将使用目前与当前请求的操作系统线程关联的凭据来连接会话状态存储区。对于客户端模拟,ASP.NET 将使用与浏览器协商的安全凭据来连接会话状态存储区。如果为 false,ASP.NET 在连接会话状态存储区时不会恢复为进程标识或应用程序模拟标识。有关更多信息,请参见 ASP.NET 模拟。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 true。

注意

在 .NET Framework 1.1 版中,如果 mode 属性设置为 SQLServer,并且客户端模拟有效,则 ASP.NET 使用来自 ASP.NET 客户端模拟的客户端凭据连接到运行 SQL Server 的计算机。

继承的属性
可选的属性。
由所有节元素继承的属性。

B. 如何让您的ASP.NET数据库连接字符串是安全的

一、Data 的DataSource属性,对应connectionString中的Data Source,“Data Source”可以由下列字符串代替:“server”,“address”,“addr”和“network address”。Data Source=.\SQLExpress也可以写成这样Data Source=(local)\SQLExpress。
二、Integrated 的IntegratedSecurity属性,对应connectionString中的Integrated Security,“Integrated Security”可以写成“trusted_connection”,为true时,使用当前的 Windows 帐户凭据进行身份验证,为false时,需要在连接中指定用户 ID 和密码。
三、的AttachDBFilename属性,对应connectionString中的AttachDBFilename,“AttachDBFilename”可以写成“extended properties”,“initial file name”。AttachDbFileName属性指定连接打开的时候动态附加到服务器上的数据库文件的位置。这个属性可以接受数据库的完整路径和相对路径(例如使用|DataDirectory|语法),在运行时这个路径会被应用程序的App_Data目录所代替。
四、User 的UserInstance属性,对应connectionString中的User Instance ,该值指示是否将连接从默认的 SQL Server Express 实例重定向到在调用方帐户之下运行并且在运行时启动的实例。UserInstance=true,在这种情况下,SQLServerExpress为了把数据库附加到新的实例,建立一个新的进程,在打开连接的用户身份下运行。在ASP.NET应用程序中,这个用户是本地的ASPNET帐号或默认的NetworkService,这依赖于操作系统。为了安全地附加非系统管理员帐号(例如ASP.NET帐号)提供的数据库文件,建立一个独立的SQLServer用户实例是必要的。

C. .net网站连接数据库,打不开

1.检液拆查SQL服务是否已启动
2.检查数据库是否燃氏已附皮埋散加
3.检查web.config文件中服务器名,用户名和密码是否正确

D. asp.net数据库网络连接

<add name="ASPNET3WEBDBCONNECTIONSTRING" connectionString="data source=(服务器IP);user id=fwyhq;pwd=(正确的密码);database=test"
providerName="System.Data.SqlClient" />
自己本机可以用本机验证方式,这是最安全的连接方式,网络上需要知道数据库服务器的IP

补充:不是用外部的IP,另外的你的用户没有密码,这也是不允许的。

E. 数据库中有几万条数据,怎样使用aspnetpage分页控件结合数据库分页读取呢

可以用存储过程分页
/*
函数名称: GetRecordFromPage
函数功能: 获取指定页的数据
参数说明: @tblName 包含数据的表名
@fldName 关键字段名
@PageSize 每页记录数
@PageIndex 要获取的页码
@OrderType 排序类型, 0 - 升序, 1 - 降序
@strWhere 查询条件 (注意: 不要加 where)
*/
CREATE PROCEDURE GetRecordFromPage
@tblName varchar(255), -- 表名
@fldName varchar(255), -- 字段名
@PageSize int = 10, -- 页尺寸
@PageIndex int = 1, -- 页码
@OrderType bit = 0, -- 设置排序类型, 非 0 值则降序
@strWhere varchar(2000) = '' -- 查询条件 (注意: 不要加 where)
AS
declare @strSQL varchar(6000) -- 主语句
declare @strTmp varchar(1000) -- 临时变量
declare @strOrder varchar(500) -- 排序类型
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by [' + @fldName + '] desc'
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by [' + @fldName +'] asc'
end
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)'
+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + '] where ' + @strWhere + ' '
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
if @PageIndex = 1
begin
set @strTmp = ''
if @strWhere != ''
set @strTmp = ' where (' + @strWhere + ')'
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + ']' + @strTmp + ' ' + @strOrder
end
exec (@strSQL)
GO

F. ASP.NET常见错误大全

检测到有潜在危险的 Request Form 值

原因:

( )在提交数据的页面或webconfig中没有对validateRequest的属性进行正确的设置

( )HTML里面写了轿烂旅两个<form>引起

解决:

方案一 在 aspx文件头中加入这句 <%@ Page validateRequest= false %>

方案二 修改nfig文件:

<configuration>

<system web>

<pages validateRequest= false />

</system web>

</configuration>

因为validateRequest默认值为true 只要设为false即可

在没有任何数据时进行无效的读取尝试 解决办法

原因

所返回的sqldatareader无数据记录 但没有作记录判断力处理 返回的是空值

加上判断即可 if (reader read()) { TextName Text =

reader[ FieldName ] ToString(); }

数据为空 不能对空值调用此方法或属性

原因:

若对象是null 那么调用对象的方法例如ToString()肯定出错一般是数历宴据库字段的值为空

在grideview等闭凳数据控件常出现

解决:因此建议作NULL处理

阅读器关闭时 FieldCount 的尝试无效

原因:

使用了SqlDataReader来绑定数据后 将connection对象作了Close()处理

类似

public SqlDataReader GetSomething()

{

conn open();

SqlDataReader reader =

sqlcmd ExcecutReader(CommandBehavior CloseConnection));

conn close();// occur error here

return reader;

}

在绑定的时候调用了这个方法来指定数据源 如果使用这个方法则需要在调用函数中关闭Re

ader这样conn就可以自动关闭

如果是使用的是SqlDataAdapter和DataSet那么请去掉显式关闭conn的调用 或者在finally

中调用之

未能映射路径

原因:可能是在webconfig中的路径配置不正确所致 在FCKEditor的配置中这种问题比较突出

<add key= FCKeditor:BasePath value= ~/admin/fckeditor/ />

<add key= FCKeditor:UserFilesPath value= /UserFiles/ />

Unreachable code detected

原因

一般是在异常处理理或返回值时使用了 throw 或return 可能是其位置放在前面 造成后面的代码执行到了

解决

把相关的异常抛出处理的语句(throw)或return 的语句放到代理执行的最后一行

索引超出范围 必须为非负值并小于集合大小

原因

( ) 没有设置DATAKEYFIELD设为数据库中相对应的唯一字段(一般是主键)

( ) DataGrid Columns > e Item Cells

解决

( ) 设置datakeyfield

( ) 加入判断语句unt (datagrid可以是其它相类似的服务器控件)

数据源不支持服务器端的数据分页

解决方法:

不要使用DataReader 改成使用DataSet 或使用自定义分页形式 不采用提供的分页功能

OleDbDataAdapter da = new OleDbDataAdapter(sql connection);

DataSet ds = new DataSet();

da Fill(ds News );

GridView DataSource = ds ;

GridView DataBind();

对象名 ***** 无效

原因:当前使用的数据库中没有*****这张表

解决: 查看是否程序中是否写错了所调用的表的名称或看一下SQL数据库中是否存在你所调用的表

在建立与服务器的连接时出错 在连接到 SQL Server 时 在默认的设置下 SQL

Server 不允许进行远程连接可能会导致此失败 (provider: 命名管道提供程序

error: 无法打开到 SQL Server 的连接)

solution: 主机上需要用固定的IP地址或服务器地址

SqlDateTime 溢出 必须介于 / / : : AM 和 / / : : PM

之间

出现这种问题``多半是因为你更新数据库时``datetime字段值为空``默认插入 年 月

日``造成datetime类型溢出

出现 表示 属性 此处应为 方法

原因:

VB与c#的方法 属性的格式有所不一样导致

可能是在design中绑定数据的语法出现错误 解决: 记住属性用[] 方法用()

记住绑定数据的正确语法(有以下几种方式::<%Container DataItem( 字段名 )%> <%

#Eval( 字段名 )%> <%Bind( 字段名 )%>等)

未能从程序集 DAL Version= Culture=neutral

PublicKeyToken=null 中加载类型 DAL SqlHelper

原因:修改了其他层后未能重新编译成dll

解决:编译一下(Rebuild)

为过程或函数 指定的参数太多

solution:调用存储过程与定义的存储过程所用的参数数量或所执行的SQL语句中所传入的参

数个数不一致(这是个SQL的错误)

解决方案:仔细检查在存储过程中所设定的参数变量 与实际输入的参数值是否一一对应

无法启动调试 绑定句柄无效

原因:系统的Terminal Services没有开启

Unable to debugging on the web server Debug failed because integrated windows authentication is not enable

解决方法:

打开vs >工具(Tools) >选项(Option) >调试(debugging) >编辑并继续(Edit and Continue) >全部打勾

Automation 操作中文件名或类名未找到: RegExp

解决方法:regsvr vbscript dll

System NullReferenceException: 未将对象引用设置到对象的实例

原因:

( )所设置的变量为空值或没有取到值 一般出现在传递参数的时候出现这个问题 也会在使用datagrid或gridview或datalist等数据控件时出现

( )控件名称与codebehind里面的没有对应

( )未用new初始化对象

( )在程序中所引用的控件不存在

解决方法:

( )使用try catch finally捕捉错误 或直接用response write()输出所取的变量值

( )查看代码中是否存在未初始化的变量

错误 文件被数字签名策略拒绝(安装vs sp 时)解决方法:

( ) 单击 开始 单击 运行 键入 control admintools 然后单击 确定

( ) 双击 本地安全策略

( ) 单击 软件限制策略 (注意 如果未列出软件限制 请右击 软件限制策略 然后单击 新建策略 )

( ) 在 对象类型 下 双击 强制

( ) 单击 除本地管理员以外的所有用户 然后单击 确定

( ) 重新启动计算机

微软说明

vs 不能从源文件模式切换到视图模式

解决方法:dos下运行下 devenv /resetskippkgs (win+r cmd)

Validation of viewstate MAC failed

解决办法:页面的顶部page加 EnableViewState= False EnableViewStateMac = False 来解决这个问题

Automation server can t create object (Automation 服务器不能创建)

解决办法:运行: Regsvr scrrun dll 即可

包加载失败

未能正确加载包 Visual Web Developer Trident Designer Package (GUID =

{ AE E C D E F A AEFF }

解决方法:

设置系统变量 VsLogActivity=

在%APPDATA%MicrosoftVisualStudio 文件夹下创建文件ActivityLog xml

Error

Microsoft Visual Studio

LoadLibrary failed for package [Visual Web Developer Trident Designer Package]

{ AE E B C D E F A AEFF }

e

c:Program FilesMicrosoft Visual Studio Common Packages ridsn dll

从 WINNTMicroSoft NETFrameworkv xxx 复制文件gdiplus dll 到 Program FilesVisual Studio Common Packages文件夹下

在命令行下运行命令 devenv /resetskippkgs

Error spawning cmd exe

解决方案:把cmd exe 拷贝到VS安装目录下的VC/BIN目录里 可以解决问题

尝试读取或写入受保护的内存

解决:硬件有问题 一般内存有问题

无法在证书存储区中找到清单签名证书

解决方法:用记事本打开项目的 csproj文件 删除类似

该项目中不存在目标 ResolveKeySource

原因:这个问题很罕见 查询国外相关资料后 大致说是由于部署的不是一个标准的solution 需要在VS自带的命令提示中运行下面这个东西恢复

解决方法:

( ) 将下列代码存为XML文件 命名为TestBuild xml

<Project DefaultTargets= Build xmlns= >

<PropertyGroup>

<TargetConnectionString>Data Source= sql % BUser ID=SqlUser% BPooling=False% BPassword=X</TargetConnectionString>

</PropertyGroup>

<ItemGroup>

<DatabaseProject Include= Database Database dbproj />

<DatabaseProject Include= Database Database dbproj />

</ItemGroup>

<Target Name= BuildAllDatabaseProjects >

<MSBuild

Properties= TargetConnectionString=$(TargetConnectionString)

Projects= @(DatabaseProject)

Targets= Build;Deploy >

</MSBuild>

</Target>

( )在命令提示中运行:m *** uild /t:BuildAllDatabaseProjects TestBuild xml

</Project>

不能将值 NULL 插入列 **

原因:这是数据库表设计的错误 所涉及的表的字段中设置了不能为空的属性 但是传入的值为null 所以报错

解决方法:查看是否所传入的值是否为Null 或修改数据库中表的所对应的列的属性

未能加载类型 命名空间 类

原因:

( )项目修改后没有进行编译

( )项目中原有的命名空间可能被修改了

( )项目中所需要的ascx或其他页面不存在 或不包含在项目中

解决方法:

( )在修改完成之后 请重新生成或编译整个项目或解决方案

( )手工修改所改动的命名空间 注意名称的大小写 再重新编译

( )将相关的文件包含在项目中

不能访问只读文件 **** ***

解决方案:

给虚拟目录所对应的文件加上 Everyone/写入 权限即可

请求因 HTTP 状态 失败 Access Denied解决方法:在iis信息服务器上把匿名访问和允许iis控制密码给勾上

有一个无效 SelectedValue 因为它不在项目列表中

原因

( )在没有绑DropDownList之前就给DropDownList SelectedValue 赋值

( )dropdownlist中出现了null值

无法在 已存在的情况下创建/影像复制该文件

解决方案 重新编译项目(多个project全部重新编译) 关闭vs 重新打开 必要时重新启动机子

用户 CASPNET 登录失败登录失败

异常详细信息: System Data SqlClient SqlException: 用户 COOASPNET 登录失败

这是怎么回事啊?

因为你的程序连接SQLServer的连接字符串是用了windows集成登陆 你可以改成用数据库帐号密码登陆 连接字符串的写法是

server=localhost;uid=sa;pwd=xxxx;database=master;

server是数据库服务器的机器名或者IP 如果是同一台机可以用localhost

uid是数据库登陆帐号

pwd是数据库密码

database是数据库初始owner名称

答案

右击桌面我的电脑 选择 管理 双击打开的 计算机管理 对话框中的 本地用户和组 下的 组 在右边的窗口中双击 Remote Desktop Users 组 在打开的 Remote Desktop Users 属性对话框中 单击添加 在打开的 添加用户 对话框中单击 高级 再单击 立即查找 按钮 在 搜索 结果中 双击ASPNET(如果是IIS NEOR SERVERCE )再点击两次确定完成添加 用户

单击 开始 所有程序 Microsoft SQL Server 企业管理器 在打开的 控制台根目录 选择相应的数据库 右击该数据库的中的 用户 选择 新建数据库用户 在 新建用户 对话 框中点击 登陆名 右侧的下拉列表框 选择 新建 打开 新建登陆对话框 点击名称右侧的 省略号按钮 在打开的对话框中将 列出的名称 中选择 本机的名称 再在下面的名称框中选定 Remote Desktop Users 然后点击 成员 按钮 双击 ASPNET(如果是IIS NEOR SERVERCE ) 然后点击确定 在 新建登陆对话 框 中的默认设置的 数据库 选项中选择相应的数据库名称 再在 数据库访问 选项下勾选相应 的数据库点击确定 完成将默认的匿名用户添加到SQL

用户 nt authority eork service 登录失败

> sqlserver 调成sql server 和windows验证模式

>

(以下方法仅供参考)

第一步 把 NT AUTHORITYNEORK SERVICE 添加到Administrator组中

我的电脑 >右键 >管理 >本地用户和组

选择 组 >双击Administrators >单击 添加 >单击 高级 >单击 立即查找 >在下面的列表中选择Neork Service用户 >两次单击 确定 >加入

第二步 在企业管理器中加入NetWord Service用户

打开Sql Server企业管理器 >选择数据库实例 >打开 安全性 节点 >选择 登录 >在右边的列表中单击右键 >选择 新建登录 >在 常规 选项卡中单击 名称 旁边的按钮 >选择 Administrators 组 >单击下面的 成员 按钮 >选择 Neork Service >单击 添加 按钮 >单击 确定 返回 新建登录 对话框 >保证身份验证类型为 windows验证 和 允许访问 >单击 确定 >关闭 企业管理器

第三步

重新运行程序 数据库连接字符串选择windows验证即可

> 在sqlserver中添加帐户或IIS_WPG工作组

此方法来自于

未能加载视图状态 正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配 例如 当以动态方式添加控件时 在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配

原因 viewstate的在作用是将控件的状态保存 在下次Post给服务器 服务器进行恢复控件的状态 (控件的状态包括 值和事件 )

解决方法

( )每一个UserControl的viewstate都改为false

( )加入这个

this Page EnableViewState = false;

此方法来源于 _astar/archive/ / / /l

由于启动用户实例的进程时出错 导致无法生成 SQL Server 的用户实例 该连接将关闭

问题原因

这是微软的bug 并且微软已经承认 详情如下

出现此错误的条件是 你用过远程桌面连接 并且安装了SQL +VS 就有很大可能触发这个问题 微软说会在将来的XP SP 里面解决掉这个问题

解决

ID= &SiteID=

如果你看不懂英文 那么我告诉你我的解决办法

删除C:Documents and Settings[USERNAME]Local SettingsApplication DataMicrosoftMicrosoft SQL Server DataSQLEXPRESS目录即可 [USERNAME]是Windows用户名 比如说Administrator

此问题来于

Server Application Unavailable

The web application you are attempting to access on this web server is currently unavailable Please hit the Refresh button in your web browser to retry your request

Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server Please review this log entry to discover what caused this error to occur

解决

如果你运行WinXP/IIS 为了给ASPNET工作进程访问你的web工程文件夹的权力请到网站文件所在的目录 右键一级文件夹 选Security-Add-键入 ASPNET 点击OK或点击Check Names 如果弹出对话框提示 Name not Found 则应点击Locations改变位置到本机计算机名 点击OK 分配此用户权限为 Full Control 点击OK

错误变为

You are not authorized to view this page

You do not have permission to view this directory or page using the credentials you supplied

解决

在IIS里右键此虚拟目录-Properties-Directory Security-Edit 勾选上Integrated Windows authentication即可

超时时间已到 超时时间已到 但是尚未从池中获取连接 出现这种情况可能是因为所有池连接均在使用 并且达到了最大池大小

可能原因如下 并发操作 Connection用后没有关闭 或者因为DataReader连接独占连接

解决方法

修改几个关键页面或访问比较频繁的数据库访问操作 使用DataAdapter和DataSet来获取数据库数据 不要使用DataReader

在访问数据库的页面上使用数据缓存 如果页面的数据不是经常更新(几分钟更新一次)的话 使用Cache对象可以不用访问数据库而使用缓存中的内容 那么可以大大减少连接数量

修改代码 把使用Connection对象的地方都在Close()后面加上Dispose()调用

建议对数据库操作进行大的修改 建立自己的数据库操作代理类 继承System IDisposable接口 强迫释放资源 这样就不会出现连接数量不够的问题了

包加载失败

未能正确加载包 Visual Web Developer Trident Designer Package (GUID =

{ AE E C D E F A AEFF } 请与包供应商联系以获得帮助 由于可能会发生环境损坏 建议重新启动应用程序 要禁止将来将来加载此包吗?可以使用 devenv reswetskippkgs 重新启用包加载

每次开机打开vs 都会有这个提示 烦

于是在google了一下 发现很多方法都试过了 只有一个解决一试就行

解决方法如下:

设置系统变量 VsLogActivity=

在%APPDATA%MicrosoftVisualStudio 文件夹下创建文件ActivityLog xml

从 WINNTMicroSoft NETFrameworkv xxx 复制文件gdiplus dll 到 Program FilesVisual Studio Common Packages文件夹下

在命令行下运行命令 devenv /resetskippkgs

注:发现此问题只有在win 会出现 win 就不会出现这个问题

用户 xxxASPNET登录失败

第一步

把 NT AUTHORITY NetWORK SERVICE 添加到Administrator组中

我的电脑 >右键 >管理 >本地用户和组

选择 组 >双击Administrators >单击 添加 >单击 高级 >单击 立即查找 >在下面的列表中选 Neork Service用户 >两次单击 确定 >加入

第二步 在企业管理器中加 Neork Service用户

打开Sql Server企业管理器 >选择数据库实例 >打开 安全性 节点 >选择 登录 >在右边的列表中单击右键 >选择 新建登录 >在 常规 选项卡中单击 名称 旁边的按钮 >选择 Administrators 组 >单击下面的 成员 按钮 >选择 Neork Service >单击 添加 按钮 >单击 确定 返回 新建登录 对话框 >保证身份验证类型为 windows验证 和 允许访问 >单击 确定 >关闭 企业管理器

第三步

重新运行asp Net程序 数据库连接字符串选择windows验证即可

以上针对win 如果是win 加ASp Net用户

无法在 已存在的情况下创建/影像复制该文件

解决方法 重新编译整个项目 或者重启电脑

Could not create an environment: OCIEnvCreate returned

解决方案一

主要是将oracle主目录oracle的读写权限赋予或者是IUSER_ 和IWAM_ 重启计算机

解决二:

打开在IIS中的WEB属性--主目录--执行权限【改为-脚本和可执行文件】

-应用程序池【改为-MSSharePointAppPool】 刷新OK

解决三:

文件夹权限可以不用管

设置ORACLE_HOME变量的方法如下

控制面板>>系统>>高级>>环境变量>>系统变量>>新建系统变量

变量名写ORACLE_HOME

变量值添实际的ORACLE_HOME路径 在注册表中有

由于目标机器积极拒绝 无法连接

在添加完引用后 用localhost替换掉所有的localhost: 重新编译

能加载视图状态 正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配 例如 当以动态方式添加控件时 在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配

解决 在页面的 Page 项添加 EnableViewState= false 即可

在以下方法或属性之间的调用不明确 method 和 method

因隐式转换的缘故 编译器无法调用重载方法的某种形式 可以用以下方法纠正该错误

以不发生隐式转换的方式指定此方法的参数

移除此方法的所有重载

在调用方法之前 强制转换到正确的类型

在应用程序级别以外使用注册为 allowDefinition= MachineToApplication

解决 在网站对应的虚拟目录上右键 选属性 然后在应用程序名后点创建 名字随便填

[子目录不会继承上级的属性 所以要将aspx文件所在的目录属性设置正确]

无法识别的配置节 connectionStrings

原因

用vs 开发的应用程序需要使 framework 而在iis中的默环境是 这时将发生不可识别的节点的问题

解决办法

环境升级为 开始-》运行-》cmd-》

C:WINDOWSMicrosoft NETFrameworkv aspnet_regiis exe i

Timeout expired The timeout period elapsed prior to obtaining a connection from the pool This may have occurred because all pooled connections were in use and max pool size was reached

Description: An unhandled exception occurred ring the execution of the current web request Please review the stack trace for more information about the error and where it originated in the code

Exception Details: System InvalidOperationException: Timeout expired The timeout period elapsed prior to obtaining a connection from the pool This may have occurred because all pooled connections were in use and max pool size was reached

主要原因可能有

使用了连接池 大量的sqlconnection用了后忘记关闸门 导致SQL占用严重 可以用 exec sp_who 这个存储过程查看一下

连接池的连接数有所限制

解决方法:

释放连接池 调用Connection对象的Close()方法关闭数据库连接

利用try catch finally对数据库连接进行异常处理 当无法连接数据库时将抛出异常 并显示出错信息 见catch代码块所示 在此程序中 无论是否发生异常 都可以通过finally区块关闭数据库的连接 从而节省计算机资源

将SqlConnection对象包含到using区块中 这样程序会自动调用Dispose()方法释放SqlConnection对象所占用的系统资源 无需再使用SqlConnection对象的Close()方法

指定min pool size表示连接池允许的最小连接数(默认为 ) 下面的代码指定了SqlConnection对象的max pool size为 min pool size为

lishixin/Article/program/net/201311/11175

G. 网站在IIS上发布后 显示数据库连接失败

你用的是Trusted Connection,发布后用户会使用IIS默认用户
作为网站,应该使用指定的数据库账号和密码访问
如:
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

H. ASP.NET入门教程 7.1 数据库

在开始学习ASPNET 数据控件之前 让我们先考虑一下数据源 数据大致上可以分为 类 关系型数据(relational data)根据范式规则组织成一系列的表 Microsoft Access Micrasoft SQL Server Oracle SAP DB 和MySQL中的数据都属于这种类型 第二种类型的数据以树型结构存储 例如XML文件 Windows注册表和Windows文件系统 最后一种类型数据的形式非常多 例如Excel文件 文本文件或私有格式 本教程(与绝大多数Web站点的数据交互一样)讨论关系型数据和XML文件

关系型数据库将信息分割到表(table)中 而表包含了记录(record 也称为行) 一条记录代表着表的主题的一个实例 每张表包含多个字段(field) 也称为列 它们按类型组织数据 例如 一张员工的表中可以包含每个员工的记录 该表的列可能是NameFirst NameLast DateOfHire等等 对于每条记录 每一列都有一个记录的值 大多数管理系统中的数据库由一组表组成 在Microsoft SQL Server中 一个或多个数据库一起形成服务器的一个实例 它也是本书中使用的数据库 一般情况下 表中只包含数据 怎样组织数据的描述信息 字段的名称以及各种限制都存放在数据库中一个称为元数据(metadata)的独立结构中

XML文件不同于关系型数据库 首先 它不是使用表 而是将数据存放在带有分支的树中 分支保存的数据越来越细化 每个数据集合以及单个数据都包含在节点中 例如 XML文件Employees中有一个Employees节点 表示树型结构的主干 接着对每个员工设置一个分支 在这个分支中将有FirstName LastName等分支 其次 XML文件是自描述的 因为元数据和数据存放在一起 每个信息都有一个HTML标记 该标记相当于一个容器 对所包含的数据进行描述 例如 数据 John 实际将保存为<NameFirst>John</NameFirst> 虽然自描述符会使XML文件增大 但它使得在没有元数据信息的情况下能容易地理解数据

几乎所有的数据源都有某种系统控制数据的使用权限 安全上的第一个问题是验证 系统在这里判断是谁要求使用数据 关于验证的话题在第 章中己经详细介绍过 因此这里不再花费过多时间进行讨论 一般地 有两种类型的验证 Windows Authentication(也称为Trusted Security)和SQL Authentication 使用哪种验证是在安装数据库的时候决定的 对于SQL Server Express 可以选择Windows Authentication或Mixed 后者意味着可以使用Windows Authentication或SQL Authentication a SQL Server Express在安装时默认选择Mixed Authentication 本书默认使用Windows Authentication

本教程主要使用Microsoft的SQL Server 该产品以不同的功能集出售 但对于我们最简单版本(SQL Server Express)的功能就足够了 幸运的是 Microsoft免费提供SQL ServerExpress 而且可以按照本书给出的指令自动安装SQL Server Express的好处在于 当您希望将自己的站点部署给公众访问的时候 所有的代码都不需要修改就可以直接移植到功能完整的SQL Server中

一旦通过验证(证明自己就是自己声称的人) 在使用数据时将有一组权限和限制 首先是查看数据的限制 数据库管理员(DBA)通常会限制直接访问表 取而代之 您可能只能通过某个视图或查询查看包含一定字段或记录的数据 其次 您可能会遇到怎样修改数据的限制 或者能否修改数据的限制 最后 即使可以修改数据 也存在数据可以怎样修改的限制(称为约束) 以使用Wrox United为例 一般情况下不能删除在赛程表中的某个球队(这样就会使赛程表存在着逻辑上的错误 造成某些比赛没有两个球队参加)

lishixin/Article/program/net/201311/14515

I. asp连接数据库时,提示连接字符串中的数据源指定了未安装的sqlserver实例,怎么办

asp连接数据库时,提示连接字符串中的数据源指定了未安装的sqlserver实例,怎么办?
Data Source=.\SQLEXPRESS;AttachDbFilename=E:\ASP.NET\BegASPNET\Site\App_Data\PlanetWrox.mdf;Integrated Security=True;MultipleActiveResultSets=True;User Instance=True

J. windows2008+iis配置 asp.net网站报这样的错误,要怎么改呀,谢谢了。error: 26 - Error Locating Server

错误提示:当建立到SQL Server的连接时,发生了与网络相关的或特定于实例的错误。数据库服务器没被找到或不可访问。请验证数据库实例名是否正确,SQL Server是否被配置为允许远程连接。
* AttachDBFilename/extended properties(扩展属性)/Initial File Name(扮旅初始文件名):可连接数据库的主要文件的名称,包括完整路径。数据库名称必须用关键字数据库指定。
* Data Source(数据源)/Server(服务器)/Address(地址)/Addr(地址)/Network Address(网络地址):SQL Server实例的名称或网络地址。(多实例:127.0.0.1,1551,使用IP,端口 的形式,不同实例的端口不同。注意补丁,防火墙的问题。)
* Database(数据库)/Initial Catalog(初始编目):数据库的名称。
* Integrated Security(集成安全)/Trusted Connection(受信连接):表示Windows认证是否被用来连接数据库。它可以被设置成True、False。默认值是False
* Password(密码)/Pwd:与帐户名相对应的密码。
* Persist Security Info(保持安全信息):用来确定一旦连接建立了以后安全信息是否可用。如果值为真的话,说明像用户名和密码这样对安全性比较敏感的数据可用,而如果值为伪则不可用。重置连接字符串将重新配置包括密码在内的所有连接字符串的值。其默认值为False。
* Pooling(池):确定是否使用连接池。如果值为真的话,连厅春凳接就要从适当的连接池中获得,或者,如果需要的话,连接将被创建,然后被加入森悉合适的连接池中。其缺省值为真。
* User ID(用户ID):用来登陆数据库的帐户名。
* Workstation ID(工作站ID):连接到SQL Server的工作站的名称。其缺省值为本地计算机的名称。

热点内容
javash脚本文件 发布:2024-05-20 01:43:11 浏览:829
安卓手机如何登陆刺激战场国际服 发布:2024-05-20 01:29:02 浏览:861
服务器核库怎么找 发布:2024-05-20 01:28:14 浏览:375
盐存储水分 发布:2024-05-20 01:09:03 浏览:810
中国移动用什么服务密码 发布:2024-05-20 00:52:10 浏览:696
make编译输出 发布:2024-05-20 00:37:01 浏览:68
4200存储服务器 发布:2024-05-20 00:20:35 浏览:161
解压小生活 发布:2024-05-20 00:15:03 浏览:143
粘土小游戏服务器ip 发布:2024-05-20 00:14:00 浏览:196
魔兽世界如何快速增加服务器 发布:2024-05-19 23:53:37 浏览:694