我在VS2012中使用C#和LINQ连接到一个简单的sql数据库mdf文件 我可以在解决方案资源管理器,Model1.edmx,Model1.tt中看到数据库中的表作为类。
我想扩展类并为其添加额外的功能,但它没有我认识的构造函数,我无法将变量传递给它来创建对象。
甚至可以做我正在尝试的事情吗?
全部谢谢
答案 0 :(得分:1)
使用部分类。 T4模板将类生成为部分类,您可以使用部分类轻松扩展它们。
因此,单独保留由T4工具生成的CS文件,并使用以下类创建与同一名称空间和程序集中的CS文件:
public partial class NameOfClassInT4
{
//your own custom stuff here.
}
是的,你可以有两个同名的部分类,这就是整个想法:在多个文件中定义类。这对于自动生成一个定义并且您的修改可能被覆盖的情况尤其有用,因此创建另一个单独的文件并在另一个文件中自定义该类,就像在同一文件中的位置一样。