这个登录失败是什么原因?

hadeseyes 2004-10-30 07:52:17
做了个最简单的asp.net表单,一个DataGrid 绑定一个数据表
结果在调试时出现如下错误,请帮忙看看是什么问题

“/MyWeb1”应用程序中的服务器错误。
--------------------------------------------------------------------------------

用户 'MYPC\ASPNET' 登录失败。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 用户 'MYPC\ASPNET' 登录失败。

源错误:


行 34: if (!IsPostBack)
行 35: {
行 36: this.sqlDataAdapter1.Fill(this.dataSet11);//出错行
行 37: this.DataGrid1.DataBind();
行 38: }


源文件: c:\inetpub\wwwroot\myweb1\webform1.aspx.cs 行: 36

堆栈跟踪:


[SqlException: 用户 'MYPC\ASPNET' 登录失败。]
System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction)
System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
System.Data.SqlClient.SqlConnection.Open()
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
MyWeb1.WebForm1.Page_Load(Object sender, EventArgs e) in c:\inetpub\wwwroot\myweb1\webform1.aspx.cs:36
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()


...全文
321 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
是说安全性\登录 的设置吧,设置为允许访问的,
而且winform下就没问题
cs920 2004-10-30
  • 打赏
  • 举报
回复
检查一下SqlServer里面的用户权限设置。
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
会不会是IIS配置的问题呢?
网淘那些事 2004-10-30
  • 打赏
  • 举报
回复
既然在WINFORM下没有问题,证明数据库连接没有问题,检查一下WEB服务器看看.
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
另外,在winform下面做,数据库连接没有任何问题.
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
//
解析.net程序的'MYPC\ASPNET' 用户是不是已经不存在了或者是权限不够
//

如何做呢?

查询分析器连接上了,但用户是MYPC\hadeseyes

现在遇到新问题了,刚切换了一下windows用户,现在打开WEB项目出现
HTTP/1.1 500 Internal Server Error错误,打不开WEB项目了
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
连接字符串是自动生成的,用windows集成验证身份还要pwd?
oldrainman 2004-10-30
  • 打赏
  • 举报
回复
先用Query Analyzer工具试试有没有连接问题,再分析代码
shoutor 2004-10-30
  • 打赏
  • 举报
回复
解析.net程序的'MYPC\ASPNET' 用户是不是已经不存在了或者是权限不够
huqiyang 2004-10-30
  • 打赏
  • 举报
回复
你是用vs设计器设计的吗 如果是的话
会不会是SqlConnection的属性 连接字符串是自动生成?如果是
你要自己在里面加上 pwd=....
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
是用向导生成的,windows集成验证身份

this.sqlConnection1 = new System.Data.SqlClient.SqlConnection();
this.sqlDataAdapter1 = new System.Data.SqlClient.SqlDataAdapter();
this.sqlSelectCommand1 = new System.Data.SqlClient.SqlCommand();
this.sqlInsertCommand1 = new System.Data.SqlClient.SqlCommand();
this.sqlUpdateCommand1 = new System.Data.SqlClient.SqlCommand();
this.sqlDeleteCommand1 = new System.Data.SqlClient.SqlCommand();
this.dataSet11 = new MyWeb1.DataSet1();
((System.ComponentModel.ISupportInitialize)(this.dataSet11)).BeginInit();
//
// sqlConnection1
//
this.sqlConnection1.ConnectionString = "workstation id=MYPC;packet size=4096;integrated security=SSPI;data source=M" +
"YPC;persist security info=False;initial catalog=Northwind";
//
// sqlDataAdapter1
//
this.sqlDataAdapter1.DeleteCommand = this.sqlDeleteCommand1;
this.sqlDataAdapter1.InsertCommand = this.sqlInsertCommand1;
this.sqlDataAdapter1.SelectCommand = this.sqlSelectCommand1;
this.sqlDataAdapter1.TableMappings.AddRange(new System.Data.Common.DataTableMapping[] {
new System.Data.Common.DataTableMapping("Table", "Categories", new System.Data.Common.DataColumnMapping[] {
new System.Data.Common.DataColumnMapping("CategoryID", "CategoryID"),
new System.Data.Common.DataColumnMapping("CategoryName", "CategoryName")})});
this.sqlDataAdapter1.UpdateCommand = this.sqlUpdateCommand1;
//
// sqlSelectCommand1
//
this.sqlSelectCommand1.CommandText = "SELECT CategoryID, CategoryName FROM Categories";
this.sqlSelectCommand1.Connection = this.sqlConnection1;
//
// sqlInsertCommand1
//
this.sqlInsertCommand1.CommandText = "INSERT INTO Categories(CategoryName) VALUES (@CategoryName); SELECT CategoryID, C" +
"ategoryName FROM Categories WHERE (CategoryID = @@IDENTITY)";
this.sqlInsertCommand1.Connection = this.sqlConnection1;
this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@CategoryName", System.Data.SqlDbType.NVarChar, 15, "CategoryName"));
//
// sqlUpdateCommand1
//
this.sqlUpdateCommand1.CommandText = "UPDATE Categories SET CategoryName = @CategoryName WHERE (CategoryID = @Original_" +
"CategoryID) AND (CategoryName = @Original_CategoryName); SELECT CategoryID, Cate" +
"goryName FROM Categories WHERE (CategoryID = @CategoryID)";
this.sqlUpdateCommand1.Connection = this.sqlConnection1;
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@CategoryName", System.Data.SqlDbType.NVarChar, 15, "CategoryName"));
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_CategoryID", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "CategoryID", System.Data.DataRowVersion.Original, null));
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_CategoryName", System.Data.SqlDbType.NVarChar, 15, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "CategoryName", System.Data.DataRowVersion.Original, null));
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@CategoryID", System.Data.SqlDbType.Int, 4, "CategoryID"));
//
// sqlDeleteCommand1
//
this.sqlDeleteCommand1.CommandText = "DELETE FROM Categories WHERE (CategoryID = @Original_CategoryID) AND (CategoryNam" +
"e = @Original_CategoryName)";
this.sqlDeleteCommand1.Connection = this.sqlConnection1;
this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_CategoryID", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "CategoryID", System.Data.DataRowVersion.Original, null));
this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_CategoryName", System.Data.SqlDbType.NVarChar, 15, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "CategoryName", System.Data.DataRowVersion.Original, null));
//
// dataSet11
//
this.dataSet11.DataSetName = "DataSet1";
this.dataSet11.Locale = new System.Globalization.CultureInfo("zh-CN");
this.Load += new System.EventHandler(this.Page_Load);
((System.ComponentModel.ISupportInitialize)(this.dataSet11)).EndInit();
happyjun2000 2004-10-30
  • 打赏
  • 举报
回复
System.Data.SqlClient.SqlException: 用户 'MYPC\ASPNET' 登录失败
你用sqlserver的查询分析器连接一下数据库,你的'MYPC\ASPNET' 和密码是否可以连接,
还有你最好把连接字符串贴一下。
oldrainman 2004-10-30
  • 打赏
  • 举报
回复
也许你数据库用户和密码不正确,把连接代码贴来看看
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
刚才看错了,所有连接重做n遍了,不解决问题
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
删数据表还是连sql server一起干掉?
hadeseyes 2004-10-30
  • 打赏
  • 举报
回复
连接没问题啊,在sqlDataAdapter里面预览很正常

应该不是纸飞机说的问题,这是msdn里的范例
feixueOK 2004-10-30
  • 打赏
  • 举报
回复
先检查看数据库服务器已经起动,再看看你连接参数是否正确,最后就是上面说的this.sqlDataAdapter1.Fill(this.dataSet11);把它改成this.sqlDataAdapter1.Fill(this.dataSet11,"table");如果还不行,把连接数据库的内容都给删了,重新做一次。
swiminfish_9999 2004-10-30
  • 打赏
  • 举报
回复
this.sqlDataAdapter1.Fill(this.dataSet11);//

看看是不是要改成

this.sqlDataAdapter1.Fill(this.dataSet11,"table");

填充 dataSet 好像要有 table 的啊
深山老翁 2004-10-30
  • 打赏
  • 举报
回复
异常详细信息: System.Data.SqlClient.SqlException是因缺少服务器而生成一个错误,看自己的连接是否正确,或把你的连接代码放出来看看:)
oldrainman 2004-10-30
  • 打赏
  • 举报
回复
未连接
加载更多回复(1)

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧