新聞中心
在向大家詳細(xì)介紹Linq實(shí)體繼承使用之前,首先讓大家了解下Linq to sql是否能根據(jù)TopicType識(shí)別派生類,然后全面介紹Linq實(shí)體繼承使用。

成都創(chuàng)新互聯(lián)長期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為寧國企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì),寧國網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
Linq實(shí)體繼承使用
定義好實(shí)體繼承之后,我們就可以Linq實(shí)體繼承使用了。先是自定義一個(gè)DataContext吧:
- public partial class BBSContext : DataContext
- {
- public Table
BoardCategories; - public Table
Boards; - public Table
Topics; - public BBSContext(string connection) : base(connection) { }
- }
然后,我們來測試一下Linq to sql是否能根據(jù)TopicType識(shí)別派生類:
- BBSContext ctx = new BBSContext("server=xxx;database=BBS;uid=xxx;pwd=xxx");
- var query = from t in ctx.Topics select t;
- foreach (Topic topic in query)
- {
- if (topic is NewTopic)
- {
- NewTopic newtopic = topic as NewTopic;
- Response.Write("標(biāo)題:" + newtopic.TopicTitle + " 類型:" +
newtopic.TopicType + "
");- }
- else if (topic is Reply)
- {
- Reply reply = topic as Reply;
- Response.Write("標(biāo)題:" + reply.TopicTitle + " 類型:" +
reply.TopicType + " 隸屬主題:" + reply.ParentTopic + "
");- }
- }
然后我們往Topics表中加一些數(shù)據(jù),如下圖:
啟動(dòng)程序得到如下測試結(jié)果:
再來看看如何進(jìn)行增刪操作
- NewTopic nt = new NewTopic() { TopicTitle = "還是新主題",
TopicContent = "還是新主題" };- Reply rpl = new Reply() { TopicTitle = "還是新回復(fù)",
TopicContent = "還是新回復(fù)", ParentTopic = 4 };- ctx.Topics.Add(nt);
- ctx.Topics.Add(rpl);
- ctx.SubmitChanges();
- rpl = ctx.Topics.OfType
().Single(reply => reply.TopicID == 8); - ctx.Topics.Remove(rpl);
- ctx.SubmitChanges();
以上介紹Linq實(shí)體繼承使用
網(wǎng)頁名稱:Linq實(shí)體繼承使用概述
文章URL:http://m.fisionsoft.com.cn/article/cdehejj.html


咨詢
建站咨詢
