首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将序列化WCF模型转换回本地模型

将序列化WCF模型转换回本地模型
EN

Stack Overflow用户
提问于 2013-06-01 00:04:31
回答 1查看 724关注 0票数 0

我有三个项目的解决方案:

  • 客户端
  • 模型
  • WCF服务

模型项目有POCO类,这些类引用我的数据库表,如下所示:

代码语言:javascript
复制
[DataContract]
    [Table("users")]
    public class User
    {
        public User()
        {

        }

        [DataMember]
        [Key, Column("userid", TypeName = "int")]
        public Int32 UserId { get; set; }

        [DataMember]
        [Column("username", TypeName = "varchar")]
        public String UserName { get; set; }

WCF服务项目引用模型,以便从如下方法返回模型:

代码语言:javascript
复制
public User ValidateUser(string organization, string userName, string password)
        {
            Model.Poco.User user = new Model.Poco.User();
            user.UserId = 1;
            user.BoardMember = true;
            user.Email = "test@yahoo.com";
            user.FirstTimeLogin = false;
            user.IsActive = true;
            user.Notes = "notes";
            user.Password = "xxxxxx";
            user.UserName = "user1";
            return user;
        }

现在,我的客户端有一个WCF服务的服务引用,调用它的代码如下所示:

代码语言:javascript
复制
private void button1_Click(object sender, EventArgs e)
        {
            WCFService.Service1Client client = new WCFService.Service1Client();
            var user = client.ValidateUser("test", "test", "test");
        }

它可以这样工作,如果我导航"user“变量,它拥有WCF服务中的所有对象属性,但是我想要做的是:

代码语言:javascript
复制
Model.Poco.User user = client.ValidateUser("test", "test", "test");

但是如果我做了这个,我就会得到一个错误,无法从: WCFService.User转换为Model.Poco.User.

关于如何将序列化对象转换为本机对象的任何线索。注意,我在客户端和WCF上都使用相同的对象,因为我在两个服务上都引用了*Models项目。

感谢任何事先的帮助!!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-01 02:14:27

在客户端项目中生成服务引用时,请检查在引用的程序集中重用类型的选项。否则,该工具将生成基于WSDL的新类,作为服务引用的一部分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16867672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档