zoukankan      html  css  js  c++  java
  • asp.net web service引用外部DLL中枚举的问题


     在.net中使用web service时发现有一个这样的问题,我先在一个Common的dll包中定义了一个通用的枚举变量

    SNET.Common.Identifier.MemberRole

    {

             NetworkOwner = 3,
            
            /// <remarks/>
            NetworkMember = 4,
            
            /// <remarks/>
            NetworkAdmin = 5

    }

    我在Member web service  引用这个DLL后,发布到IIS,然后在到WEB SITE中引用这个WEB SERVICE

    发现在这个web servicer的实例的也有这个定义,可以在它的Reference.cs中看到这样的

     public enum MemberRole {

      NetworkOwner,
            
            /// <remarks/>
            NetworkMember,
            
            /// <remarks/>
            NetworkAdmin

    }

    而我在PAGE上调用的话MemberRole. NetworkMember它引用了web service实例的的定义,这个值为0了,而不外部类,除非我写全路径SNET.Common.Identifier.MemberRole.MemberRole,这下晕倒了,后来问了些同事.

    说,web service引用会自动把那相可用到的定义加入到自己的Reference.cs文件来,然而它的值却变了,因为他们的上下文关系不同,那怎么办,有个办法就是调用的接口定义不要传入枚举值,传一个枚举变量,或直接用Const一个变量好了.

  • 相关阅读:
    原型链与析构函数
    django篇-路由系统介绍
    mvc与mtv
    模板初探
    安装和创建django项目
    一分钟学会定时删除日志的 Shell 脚本
    svn其中一种备份方式svnsync
    mysql企业实战(二)之主从复制,读写分离,双主,以及高可用
    mysql企业实战(一)
    nginx详解
  • 原文地址:https://www.cnblogs.com/Leung/p/1442218.html
Copyright © 2011-2022 走看看