最近在学习的过程中看到了ADO.NET Data Service 这个东西,感觉用起来很好用,今天就来用用;

目前对他的运行机制还不是很明确,先做了一个示例出来感受一下他的好处;

在后过的学习过程中可能会更加深入的学习,便宜能更加了解他的内部机制;

先看创建过程:

1 先创建一个ASP.NET 的应该程序

2 在默认的页面中添加一个GridView控件;

3 添加一个ado.NET Entity ;如下图所示

ADO.NET Data Service 一

单击确定

ADO.NET Data Service 一

单击下一步,选择你在生成的表;这样实体就创建完毕;

4 创建一个ADO.NET Data Services

ADO.NET Data Service 一

单击确定,出现如下代码:

namespace MyDataService
{
    public class WebDataService1 : DataService< /* TODO: 在此放置数据源类名*/ >
    {
        // 仅调用此方法一次以初始化涉及服务范围的策略。
        public static void InitializeService(IDataServiceConfiguration config)
        {
            // TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
            // 示例:
            // config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead);
            // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All);
        }
    }
}

将把以上代码修改成如下代码:

public class NorthwindDataService : DataService<NORTHWNDEntities>
   {
       // 仅调用此方法一次以初始化涉及服务范围的策略。
       public static void InitializeService(IDataServiceConfiguration config)
       {
           // TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
           // 示例:
           config.SetEntitySetAccessRule("Orders", EntitySetRights.AllRead);
           // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All);
       }
   }
 
运行服务:
ADO.NET Data Service 一 
将出现如下:
ADO.NET Data Service 一 
将在URL中输入Orders,显示记录条数;
ADO.NET Data Service 一 
 
最后在页面上将显示数据;将把数据源绑定给GridView,代码如下:
public partial class _Default : System.Web.UI.Page
   {
       protected void Page_Load(object sender, EventArgs e)
       {
           NorthwindDataService ss = new NorthwindDataService();

           DataServiceContext context = new DataServiceContext(new 
           Uri("http://localhost:7261/NorthwindDataService.svc/"));
           this.GridView1.DataSource = context.Execute<Orders>(new Uri("Orders", UriKind.Relative));
           this.GridView1.DataBind();
       }
   }
运行结果如下:
ADO.NET Data Service 一 
 
本文是一个关于ADO.NET Data Services 一个入门级的示例代码,文章的原理及过程没有说得很详细
我也在学习,将在后面为大家提供,
希望对初学者的朋友有所帮助;

相关文章: