저는 데이터베이스와 LINQ To SQL ASP.NET 웹 응용 프로그램을 디자인하고 있습니다.LINQ to SQL IsDiscriminator 열을 상속받을 수 있습니까?
정상 및 루트라는 두 가지 유형의 페이지가 있다고 가정 해보십시오. 일부 페이지는 뿌리입니다. 일부 페이지는 그렇지 않습니다.
가 나는 페이지 데이터베이스 테이블과 RootPage 데이터베이스 테이블이 있습니다
Page
----
PK PageId
HtmlTitle
PageHeading
MetaDescription
IsRoot
RootPage
--------
FK PK PageId
FavIcon
StyleSheet
MasterPage
내가 내 DBML 파일 내 경우에는 내가 IsRoot 열의 IsDiscriminator 속성을 설정 생각을하고 내 RootPage 클래스는 페이지 클래스를 상속합니다 .
나는 내 코드에서 다음과 같이 작업 할 수있게하려면 :
MyDataContext db = new MyDataContext();
var roots = from p in db.Pages
where p is RootPage
select (RootPage)p;
또는 같은
가 :RootPage r = new RootPage();
r.HtmlTitle = "Foo";
r.FavIcon = "bar.ico";
...
db.Pages.Add(r);
db.SubmitChanges();
SQL IsDiscriminator 컬럼에 LINQ에 널 (NULL) 또는 거짓이 될 수 있습니까? 이게 효과가 있니?
감사합니다. 여기에 대한 자세한 정보 : http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/10/01/linq-to-sql-inheritance.aspx –