新聞中心
學(xué)習(xí)LINQ To SQL時(shí),經(jīng)常會(huì)遇到LINQ To SQL Designer問題,這里將介紹LINQ To SQL Designer問題的解決方法。

耒陽網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站從2013年開始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
LINQ To SQL Designer
談完了系統(tǒng)架構(gòu)后,現(xiàn)在讓我們回到主軸上,如何將LINQ To SQL應(yīng)用于N-Tier應(yīng)用程式架構(gòu)中,在這個(gè)階段首要必須解決的問題是,LINQ To SQL的Entity Object能否透過Web Service 、Remoting、WCF來傳遞?
答案是肯定的,不支援這個(gè)的話,LINQ To SQL就幾乎沒有存在的價(jià)值了。不過這有個(gè)小技巧,在預(yù)設(shè)設(shè)定中,LINQ To SQL Designer所產(chǎn)生出來的Entity Class是不支援序列化的,你必須在LINQ To SQL Designer中調(diào)整Serialization Mode屬性來要求其產(chǎn)生可序列化的Entity Class。
在設(shè)定Serialization Mode為Unidirectional后,所產(chǎn)生的Entity Class便會(huì)標(biāo)上傳統(tǒng)物件序列化所須的[Serializable]及WCF所須的[DataContrast]等兩個(gè)Attribute,有了這兩個(gè) Attribute后,Entity Object便可傳遞于Remoting、Web Services、WCF等通訊協(xié)定。
中介伺服器端的實(shí)作
1.用WCF來實(shí)作中介伺服器是一件相當(dāng)輕松的事,首先請(qǐng)建立一個(gè)WCF Service Application專案。
2.然后添加一個(gè)LINQ To SQL Classes項(xiàng)目于此專案中,本例于此添加了北風(fēng)資料庫的Customers資料表。
3.接著刪除自動(dòng)產(chǎn)生的IService1.cs,于Service1.svc.cs中輸入一下代碼。
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Runtime.Serialization;
- using System.ServiceModel;
- using System.Text;
- namespace WCFDataService
- {
- [ServiceContract]
- public interface IDataService
- {
- [OperationContract]
- Customer[] GetAllData();
- }
- public class DataService : IDataService
- {
- region IDataService Members
- public Customer[] GetAllData()
- {
- NorthwindDataContext context = new NorthwindDataContext();
- return (from s1 in context.Customers select s1).ToArray();
- }
- endregion
- }
- }
最后調(diào)整app.config中關(guān)于Service的設(shè)定后,便完成了此一執(zhí)行于中介伺服器上的WCF Service的建構(gòu)工作。
分享題目:LINQToSQLDesigner描述
網(wǎng)站路徑:http://fisionsoft.com.cn/article/coejgss.html


咨詢
建站咨詢
