zoukankan      html  css  js  c++  java
  • 如何:使用反射提供程序创建数据服务(WCF 数据服务)

    使用反射提供程序创建数据服务

    使用 WCF 数据服务 可以定义基于任意类的数据模型,前提是这些类作为实现 IQueryable 接口的对象公开。

    1、定义实例类(Post.cs)

    using System.Data.Services.Common;

    [DataServiceKeyAttribute("Id")]
    public class Post
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Author { get; set; }
    }

    2、在实现 Bolg类中实现IQueryable 接口的对象公开

    public class Bolg
    {
        List<Post> post = new List<Post>();

        public Bolg()
        {
            post.Add(new Post { Id = 1, Title = "一步一步学Silverlight 2系列(13):数据与通信之WebRequest", Author = "TerryLee" });
            post.Add(new Post { Id = 2, Title = "一步一步学Silverlight 2系列(12):数据与通信之WebClient", Author = "TerryLee" });
            post.Add(new Post { Id = 3, Title = "一步一步学Silverlight 2系列(11):数据绑定", Author = "TerryLee" });
            post.Add(new Post { Id = 4, Title = "一步一步学Silverlight 2系列(10):使用用户控件", Author = "TerryLee" });
            post.Add(new Post { Id = 5, Title = "一步一步学Silverlight 2系列(9):使用控件模板", Author = "TerryLee" });
            post.Add(new Post { Id = 6, Title = "一步一步学Silverlight 2系列(8):使用样式封装控件观感", Author = "TerryLee" });
        }

        public IQueryable<Post> Posts
        {
            get { return post.AsQueryable<Post>(); }
        }

    3、在同一命名空间下,创建WCF数据服务(BlogDataService.svc)

    public class BlogDataService : DataService<Bolg>
    {
        public static void InitializeService(IDataServiceConfiguration config)
        {
            config.SetEntitySetAccessRule("Posts", EntitySetRights.All);
        }
    }

    4、此时,即可在浏览器中浏览WCF数据服务了。

    参考文件地址:http://msdn.microsoft.com/zh-cn/library/dd728281.aspx

  • 相关阅读:
    LOJ 10160
    LOJ 10155
    2018-11-1 NOIP 模拟赛解题报告
    联考前停课集训随笔
    一个博客园代码高亮的方案
    详解使用 Tarjan 求 LCA 问题(图解)
    NOIP2018普及初赛解析
    关于CCR测评器的自定义校验器(Special Judge)
    日常,异常处理
    Androidstudio 编译慢 这样的体验肯定很多人都有!!!
  • 原文地址:https://www.cnblogs.com/lanchong/p/2220294.html
Copyright © 2011-2022 走看看