1

我的 ASP.NET 网站出现以下错误。我刚把它移到另一台电脑上。运行 IIS,SQL Server Express 并将数据源机器名称更改为新机器名称。但是,在任何具有数据库访问权限的页面上,我都会收到屏幕截图中显示的错误: 应用程序中的服务器错误

Innovations-news.aspx 这样创建了一个新的 DataContext:

dataContext = new DataContext(Config.ConnectionString);

我的 Config 类根据当前 IP 返回连接字符串。例如:

return ConfigurationManager.ConnectionStrings["Development"].ConnectionString;

在 web.config 中:

<connectionStrings>
<add name="Development" connectionString="Data Source=WORK51C0\SQLEXPRESS;Initial Catalog=Jri;Integrated Security=True;" providerName="System.Data.SqlClient"/>
</connectionStrings>

以下来自 LinqToSql1.designer.cs

public DataContext() : 
            base(global::Jri.Data.Properties.Settings.Default.JriConnectionString1, mappingSource)
    {
        OnCreated();
    }

    public DataContext(string connection) : 
            base(connection, mappingSource)
    {
        OnCreated();
    }

    public DataContext(System.Data.IDbConnection connection) : 
            base(connection, mappingSource)
    {
        OnCreated();
    }

    public DataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
            base(connection, mappingSource)
    {
        OnCreated();
    }

    public DataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
            base(connection, mappingSource)
    {
        OnCreated();
    }

关于如何最好地调试它的任何建议?或者甚至你知道什么是错的?!

谢谢,

4

2 回答 2

0

这是一个 ArgumentNullException。您以某种方式将 null 传递给构造函数或 DataContext。

附加一个调试器,看看为什么 Config.ConnectionString 或 mappingSource 返回 null。

于 2012-05-11T17:07:40.557 回答
0

好的,这是我的配置类与 ConfigurationManager 的访问问题。所以我的临时解决方案是让这个类直接输出连接字符串,而不是尝试从web.config中获取。

于 2012-06-14T10:07:14.043 回答