码迷,mamicode.com
首页 > Windows程序 > 详细

WebApi学习笔记08:控制台应用程序模板--创建 OData客户端应用程序

时间:2014-11-06 00:39:51      阅读:488      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   ar   os   使用   for   

1.创建项目

右键OData文件夹,添加-》新建项目:

bubuko.com,布布扣

2.安装 OData 客户端代码生成器

打开vs里,工具-》扩展和更新:

bubuko.com,布布扣

3.生成服务代理

在根目录下,添加:

bubuko.com,布布扣

现在需要另开一个VS,把ProductService项目(上一章的例子)跑起来。

修改ProductClient.tt,把Uri填上ProductService项目运行的网址:

bubuko.com,布布扣

点击保存,没有出错提示,就能生成代码,说明OK。如:

bubuko.com,布布扣

4.使用服务代理来调用OData服务

修改Program.cs,如下:

using System;

namespace ProductApp
{
    class Program
    {
        // Get an entire entity set.
        static void ListAllProducts(Default.Container container)
        {
            foreach (var p in container.Products)
            {
                Console.WriteLine("{0} {1} {2}", p.Name, p.Price, p.Category);
            }
        }

        static void AddProduct(Default.Container container, ProductService.Models.Product product)
        {
            container.AddToProducts(product);
            var serviceResponse = container.SaveChanges();
            foreach (var operationResponse in serviceResponse)
            {
                Console.WriteLine("Response: {0}", operationResponse.StatusCode);
            }
        }

        static void Main(string[] args)
        {
            string serviceUri = "http://localhost:52848/";
            var container = new Default.Container(new Uri(serviceUri));

            var product = new ProductService.Models.Product()
            {
                Name = "Yo-yo",
                Category = "Toys",
                Price = 4.95M
            };

            AddProduct(container, product);
            ListAllProducts(container);

            Console.ReadKey();
        }
    }

}

运行结果:

bubuko.com,布布扣

 

WebApi学习笔记08:控制台应用程序模板--创建 OData客户端应用程序

标签:style   blog   http   io   color   ar   os   使用   for   

原文地址:http://www.cnblogs.com/elder/p/4077642.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!