我是新来的LINQ到SQL,我想实现是建立在实体类,它是多个字段的组合单一只读属性,特别是我想创建一个名字字段combines-标题,名字及姓氏。

我可以看到如何通过改变了.Designer.cs文件做,但知道我不应该触摸到了。

我试图这样做,这样的动态数据,我得到一列,而不是多列。

有帮助吗?

解决方案

这里的窍门是使用partial class;创建一个新的cs文件,和在同一个命名空间添加命名为你的类型的新类:

namespace My.Data.Namespace {
    partial class Employee {
        public string Foo {
            get {return Forename + " " + Surname; } // etc
        }
    }
}

原(生成)的类文件相结合。这是添加额外的功能到生成的实体(包括数据上下文)的常用方法。你可能也想看看“部分方法”,因为许多部分方法是通过LINQ到SQL定义和使用。

一个警告:如果你的dbml称为MySystem.dbml,然后的避免创建MySystem.cs文件(大概为您的部分类);有在代码生成器,可能会导致此失败的错误。仅举别的东西。

其他提示

在您的LINQ的select语句,你为什么不使用这样的:

select new {FullName = x.FirstName + " " + x.Surname};

不知道如果语法是100%存在,但检查出的想法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top