我需要定期刷新我的Linq To SQL类;是的,让我感到羞愧的是没有充分考虑我的数据模式,糟糕的开发人员和广告恶心。我发现SQLMetal几乎可以做到这一点,但也许我从参数列表中遗漏了一些东西。SQLMetal生成类但不是无参数构造函数
当我运行使用Visual Studio的外部工具我闪亮的新的工具栏按钮我的批处理文件,
@echo off
del c:\path\to\LinqToSql.dbml
SQLMetal.exe /server:SERVER\SQLSERVER /database:db /timeout:0 /dbml:"c:\path\to\LinqToSql.dbml" /namespace:DAL /context:DataDataContext /entitybase:System.Data.Linq.DataContext /language:csharp /pluralize
SqlMetal生成.dbml文件,万岁。但是,问题1可以以编程方式将.dbml文件包含到我的项目中吗?
问题2
为什么,当我编译后手动包括新生成的.dbml文件,做我的每个类都有以下建立与他们的参数构造函数的行号相关联的错误?例如30个表格= 30个构建错误。
'System.Data.Linq.DataContext' does not contain a constructor that takes 0 arguments
实际
我注意到我的DataDataContext
生成的类是没有参数的构造函数,所以我加了一个局部类来补充,但它仍然没有做的伎俩。
public partial class DataDataContext
{
public DataDataContext() :
base(global::DAL.Properties.Settings.Default.MyConnectionString, mappingSource)
{
OnCreated();
}
}
我认为这刷新过程将能够实现自动化,但手动添加不适合我的工作产生这些构造错误产生的.dbml文件。
新增赏金。我已经使用了OP设计没有问题,但与SQL精简工作,并通过SQLMetal去,我想我们很多人想知道如何生成一个无参数的构造函数。 – aevanko 2011-10-27 08:17:50