戴跃雄 2013-03-04 08:59 采纳率: 0%
浏览 4413

WCF 服务在第一次连接的时候很慢

WCF 服务在第一次连接的时候很慢 第一次总要等很久
WCF 服务在第一次连接的时候很慢 第一次总要等很久

  • 写回答

1条回答 默认 最新

  • 问答小助手 2013-03-04 09:24
    关注

    用WCF没办法,改用ASP.NET Web API。

    添加Global.asax,在Application_Start中注册Web API的路由,在Global.asax.cs中添加如下代码:

    protected void Application_Start(object sender, EventArgs e)
    {
        RouteTable.Routes.MapHttpRoute("WebApi", "api/{controller}/{action}/{id}", 
            new { id = RouteParameter.Optional });
    }
    

    添加Controllers文件夹,在其中添加类文件DemoController.cs,并让DemoController继承自ApiController。代码如下:

    namespace CNBlogsWebApiDemo.Controllers
    {
        public class DemoController : ApiController
        {
        }
    }
    

    添加ViewModels文件夹,在其中添加Site.cs,并定义Site。

    namespace CNBlogsWebApiDemo.ViewModels
    {
        public class Site
        {
            public int SiteId { get; set; }
            public string Title { get; set; }
            public string Uri { get; set; }
        }
    }
    

    给DemoController添加一个方法SiteList,并写上我们的示例代码。代码如下:

    public class DemoController : ApiController
    {
        public IList<Site> SiteList(int startId, int itemcount)
        {
            var sites = new List<Site>();
            sites.Add(new Site { SiteId = 1, Title = "test", Uri = "www.cnblogs.cc" });
            sites.Add(new Site { SiteId = 2, Title = "首页", Uri = "www.cnblogs.com" });
            sites.Add(new Site { SiteId = 3, Title = "博问", Uri = "q.cnblogs.com" });
            sites.Add(new Site { SiteId = 4, Title = "新闻", Uri = "news.cnblogs.com" });
            sites.Add(new Site { SiteId = 5, Title = "招聘", Uri = "job.cnblogs.com" });
    
            var result = (from Site site in sites
                            where site.SiteId > startId
                            select site)
                            .Take(itemcount)
                            .ToList();
            return result;
        }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何实现从tello无人机上获取视频流,然后将获取的视频通过yolov5进行检测
  • ¥15 WPF使用Canvas绘制矢量图问题
  • ¥15 用三极管设计一个单管共射放大电路
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决