天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ADO.NET Data Service

關(guān)于ADO.NET Entity Framework部分的內(nèi)容見(jiàn)ADO.NET Entity Framework(1-4)

http://www.cnblogs.com/foundation/archive/2008/10/06/1304718.html

本文例子下載: http://files.cnblogs.com/wxwinter/lz.rar

 

ADO.NET Data Service介紹

 

1.ADO.NET Data Service的DataServiceHost是一個(gè)WCF Service,由System.Data.Services.DataService提供來(lái)自NET3.5 SP1 類庫(kù)中的System.Data.Services.dll

2.DataServices會(huì)自動(dòng)為加載的Entity對(duì)象生成具有增查刪改功能的WCF服務(wù)

3.DataServices是以Http方式與客戶端進(jìn)行通信.任何可以實(shí)現(xiàn)HTTP訪問(wèn)的客戶端,都可以與DataServices交互

4. NET3.5 SP1的客戶端可以使用System.Data.Services.Client.DataServiceContext與DataServices交互,該類來(lái)自NET3.5 SP1 類庫(kù)中的System.Data.Services.Client.dll 文件

5. Silverlight 2.0客戶端可以使用System.Data.Services.Client.DataServiceContext與DataServices交互,該類來(lái)自Silverlight 2.0 類庫(kù)中的System.Data.Services.Client 文件

6.DataServices提供ATOM與JSON兩種格式用來(lái)描述數(shù)據(jù)結(jié)構(gòu),說(shuō)明如下:

ATOM

RSS類似,也是建立在XML數(shù)據(jù)格式的基礎(chǔ)之上的

Atom相對(duì)RSS格式而言,進(jìn)行了擴(kuò)展,提供了比RSS更多的項(xiàng)目屬性

JSON

格式如下

{

"name": "wxd",

"time": "2008/10/10 10:10",

"value": 123.456,

"list": [ "wxwinter", "lzm"]

}

添加ADO.NET數(shù)據(jù)服務(wù)

public class myWebDataService : DataService<myDBEntities>

{

public static void InitializeService(IDataServiceConfiguration config)

{

config.SetEntitySetAccessRule("*", EntitySetRights.All);

// * :表示全部實(shí)體集

// EntitySetRights.All : 表示全部的操作權(quán)限

}

}

 

NET客啟訪問(wèn)DataService

引用數(shù)據(jù)服務(wù)

 

查詢

//查詢

private void button1_Click(object sender, EventArgs e)

{

Uri url = new Uri("http://localhost:1468/myWebDataService.svc");

myService.myDBEntities server = new WinFormClient.myService.myDBEntities(url);

 

foreach (var v in server.tabA)

{

 

Console.WriteLine("{0},{1},{2}", v.a, v.b, v.c);

}

//-

foreach (var v in server.tabX.Where(p=>p.x=="002"))

{

 

Console.WriteLine("{0},{1},{2}", v.x, v.y, v.z);

}

 

}

 

lzm ,2 ,5

wxd ,1 ,4

wxwinter ,3 ,6

002 ,8 ,llzzmm

Silverlight客啟訪問(wèn)DataService

Silverlight 2.0 可以利用兩種方法與DataServices交互:

  • HttpWebRequest 與 HttpWebResponse
  • System.Data.Services.Client.DataServiceContext

Silverlight 2.0 是使用異步方法來(lái)連接遠(yuǎn)程數(shù)據(jù)源。

LINQ 的 select ,要用 BeginExecute() 和 EndExecute()

LINQ 的 SaveChanges(),要用 BeginSaveChanges() 和 EndSaveChanges()

 

引用服務(wù)

 

xaml頁(yè)面

<StackPanel Loaded="StackPanel_Loaded">

<data:DataGrid Name="dg">data:DataGrid>

<Button Content="DataServiceContext方式加載數(shù)據(jù)" Width="200" Click="loadData_Click" />

<Button Content="WebClient方式加載數(shù)據(jù)" Width="200" Click="loadData2_Click" />

<Button Content="添加" Width="200" Click="add_Click" />

<Button Content="修改" Width="200" Click="edit_Click" />

<Button Content="刪除" Width="200" Click="del_Click" />

StackPanel>

myService.myDBEntities server;

private void StackPanel_Loaded(object sender, RoutedEventArgs e)

{

Uri url = new Uri("http://localhost:1468/myWebDataService.svc");

server = new myService.myDBEntities(url);

}

void saveChanges_completed(IAsyncResult obj)

{

 

}

URL訪問(wèn)

 

DataService 支持URL方式訪問(wèn)

格式

http://[Url]/[ServiceName]/[EntityName]/[NavigationOptions]?[QueryOptions]

Url: 數(shù)據(jù)服務(wù)所在的網(wǎng)址

ServiceName: 數(shù)據(jù)服務(wù)的名稱

EntityName: Entity 名稱或是 Service 方法名稱

NavigationOptions: 查詢 Entity 中關(guān)聯(lián)的設(shè)定

QueryOptions: 查詢的選項(xiàng)

 

WEB方法

[WebGet] 使用 GET方式訪問(wèn)

[WebInvoke] 使用 POST/PUT/DELETE 方式訪問(wèn)

服務(wù)

public class myWebDataService : DataService<myDBEntities>

{

 

public static void InitializeService(IDataServiceConfiguration config)

{

config.SetEntitySetAccessRule("*", EntitySetRights.All);

// * :表示全部實(shí)體集

// EntitySetRights.All : 表示全部的操作權(quán)限

 

// config.SetServiceOperationAccessRule("getTabA", ServiceOperationRights.All);

config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);

// * :表示全部實(shí)體集

// ServiceOperationRights.All : 表示全部的操作權(quán)限

}

 

[WebGet]

public IQueryable<tabA> getTabA(string a)

{

var v= CurrentDataSource.tabA.Where(p => p.a == a);

return v;

}

 

[WebInvoke]

public IQueryable<tabX> getTabX(string x)

{

var v = CurrentDataSource.tabX.Where(p => p.x == x);

return v;

}

}

NET技術(shù)ADO.NET Data Service,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲伊人久久综合影院2021 | 一进一出抽搐gif免费60秒 | 在线中文字幕亚洲日韩 | 国产亚洲精品精华液 | 国产主播AV福利精品一区 | 老师真棒无遮瑕版漫画免费 | 99久久夜色精品国产亚洲AV卜 | 色中色辩论区 | 国产精品7777人妻精品冫 | 精品日韩二区三区精品视频 | 亚洲爆乳无码精品AAA片蜜桃 | 九九热视频 这里有精品 | 高h辣h双处全是肉一对一 | 黄子佼81岁父亲现状曝光 | 日本电影免费久久精品 | 欧美男女爱爱 | 男人把女人桶到高潮嗷嗷叫 | 四虎国产精品高清在线观看 | free高跟丝袜秘书hd | 女同给老师下媚药 | 亚洲精品无码葡京AV天堂 | 亚洲国产第一 | 影音先锋av男人资源 | 97色伦97色伦国产 | 韩国g奶空姐 | 久久精品中文闷骚内射 | 国产精品无码人妻99999 | 我把寡妇日出水好爽 | 好男人好资源在线播放 | 亚洲女初尝黑人巨磁链接 | 偷拍 自怕 亚洲 在线 | 国产精品成久久久久三级四虎 | 亚洲精品视频在线播放 | 天天看高清影视在线18 | 最近日本字幕免费高清 | 亚洲午夜AV久久久精品影院色戒 | 另类欧美尿交 | 无码国产欧美日韩精品 | 大相蕉伊人狼人久草av | 青青伊人网 | 一个人免费视频在线观看 |