我正在学习这个,所以请耐心等待......我正在尝试创建数据库对象来访问表。
AppDatabaseDataContext appDb = new AppDatabaseDataContext();
这给了我一个错误,所以我创建了构造函数......
public AppDatabaseDataContext()
{
}
现在这告诉我它System.Data.Linq.DataContext
不包含带 0 个参数的构造函数。为什么?
谢谢!
我正在学习这个,所以请耐心等待......我正在尝试创建数据库对象来访问表。
AppDatabaseDataContext appDb = new AppDatabaseDataContext();
这给了我一个错误,所以我创建了构造函数......
public AppDatabaseDataContext()
{
}
现在这告诉我它System.Data.Linq.DataContext
不包含带 0 个参数的构造函数。为什么?
谢谢!
您需要指定一个连接字符串。如果您知道它总是相同的(例如,localhost),您可以在无参数构造函数中对其进行硬编码:
public AppDatabaseDataContext()
: this(@"Data Source=localhost;Initial Catalog=Foo;Integrated Security=True")
{
}
请注意我们如何链接构造函数来调用使用连接字符串的版本。这样,您可以使用无参数构造函数实例化数据上下文,它将使用此默认连接字符串。
有时 LINQ2SQL 可能会在属性窗口上变得混乱,并且连接字符串可能会消失。如果可以,重新启动,删除 de Dbml,但不要忘记从 web.config 中删除连接字符串。将新的 Linq2SQL 添加到您的项目中,并让 LINQ2SQL 在 web.config 中为 U 创建连接字符串。
真奇怪。过去每次我使用“LINQ to SQL”DataContext 时,它总是为我创建一个 0 参数构造函数。
但是今天,我发现有时,在设计器中,它不允许我在“属性”窗口中选择特定的(已知的)连接字符串......当这种情况发生时,它拒绝创建这个 0 参数构造函数。
解决方案是自己手动添加。
我的 web.config 包含一个名为的连接字符串MikesConnectionString
:
<configuration>
<connectionStrings>
<add name="MikesConnectionString" connectionString="Data Source=localhost;Initial Catalog=MikesDatabase;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
...所以在我的survey.designer.cs文件中,我添加了这个:
public SurveyDataContext() :
base(global::System.Configuration.ConfigurationManager.ConnectionStrings["MikesConnectionString"].ConnectionString, mappingSource)
{
OnCreated();
}
任务完成。
但是很奇怪。很奇怪。
Just Change your connection string just like
<connectionStrings>
<add name="DBLabConnectionString"
connectionString="Data Source=.\SQLExpress;Initial Catalog=DatabaseName;
Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>