C# 无法通过";使用命名空间;使用;
我有以下工作代码(用于使用WCF服务) SecurityRoleWebService是一个命名空间 SecurityWebserviceManagerImplClient是与WCF服务相对应的类 getSecurityRoles()是与服务操作相对应的方法 当我将名称空间添加为C# 无法通过";使用命名空间;使用;,c#,.net,wcf,C#,.net,Wcf,我有以下工作代码(用于使用WCF服务) SecurityRoleWebService是一个命名空间 SecurityWebserviceManagerImplClient是与WCF服务相对应的类 getSecurityRoles()是与服务操作相对应的方法 当我将名称空间添加为 using SecurityRoleWebService 我得到以下错误: 错误:找不到类型或命名空间名称“SecurityRoleWebService”(是否缺少using指令或程序集引用?) 为什么会这样?如何克
using SecurityRoleWebService
我得到以下错误:
错误:找不到类型或命名空间名称“SecurityRoleWebService”(是否缺少using指令或程序集引用?)
为什么会这样?如何克服这个问题
SecurityRoleWebService.SecurityWebserviceManagerImplClient proxySecurityRole = new SecurityRoleWebService.SecurityWebserviceManagerImplClient();
SecurityRoleWebService.SecurityRole[] roles = proxySecurityRole.getSecurityRoles(userID);
string roleName = roles[0].roleName;
您是否在项目中引用了dll?如果没有,请右键单击您的项目,然后添加引用,然后选择您的dll。您在项目中引用过dll吗?如果没有,请右键单击您的项目,然后添加引用,然后选择您的dll。您在其中创建ServiceReference的项目的命名空间是什么?您可能需要在您的应用程序中使用“前缀”该命名空间:
using YourNamespaceHere.SecurityRoleWebService;
您在其中创建ServiceReference的项目的命名空间是什么?您可能需要在您的应用程序中使用“前缀”该命名空间:
using YourNamespaceHere.SecurityRoleWebService;
使用类的完整限定命名空间。使用ServiceReference时,生成的命名空间是
[项目的默认命名空间].[服务引用的名称]
。您必须在using中使用这个完全限定的命名空间
当您像使用new SecurityRoleWebService.SecurityWebserviceManagerImplClient()一样为类添加前缀时代码>可以使用相对命名空间(相对于代码块所在的命名空间)
当您使用它编写代码时,您不在具有名称空间的代码块中,因此没有与之相关的名称空间。必须使用完全限定的命名空间。使用类的完全限定命名空间。使用ServiceReference时,生成的命名空间是[项目的默认命名空间].[服务引用的名称]
。您必须在using中使用这个完全限定的命名空间
当您像使用new SecurityRoleWebService.SecurityWebserviceManagerImplClient()一样为类添加前缀时代码>可以使用相对命名空间(相对于代码块所在的命名空间)
当您使用它编写代码时,您不在具有名称空间的代码块中,因此没有与之相关的名称空间。您必须使用完整的限定命名空间。Uhm SecurityRoleWebService是完整命名空间吗?它的前缀不是项目的名称空间吗?您尝试过完整的名称空间了吗?很抱歉,这是显而易见的,但听起来您需要引用定义SecurityRoleWebService的DLL。@Hinek谢谢。使用我的项目名称空间作为web服务名称空间的前缀进行了修复。你能把它作为答案贴出来吗?另外,你能解释一下为什么我以前的代码没有项目前缀就可以工作吗?@Lijo不客气,我很高兴它帮了我的忙,并试图在答案中解释。只要问问,如果还有什么不清楚的地方。嗯,SecurityRoleWebService是完整的名称空间吗?它的前缀不是项目的名称空间吗?您尝试过完整的名称空间了吗?很抱歉,这是显而易见的,但听起来您需要引用定义SecurityRoleWebService的DLL。@Hinek谢谢。使用我的项目名称空间作为web服务名称空间的前缀进行了修复。你能把它作为答案贴出来吗?另外,你能解释一下为什么我以前的代码没有项目前缀就可以工作吗?@Lijo不客气,我很高兴它帮了我的忙,并试图在答案中解释。问一下,如果还有什么不清楚的地方。哪个dll?我已使用添加服务引用将wsdl添加到项目中。哪个dll?我已经使用添加服务引用将wsdl添加到项目中。