首页 新闻 搜索 专区 学院

请问 WCF 可传递 static 方法吗?

0
悬赏园豆:50 [已关闭问题] 关闭于 2010-10-29 19:33

请问 WCF 可传递 static 方法吗?
小弟我试了后,默认是不行,
但现在有一大堆 Class、static method,需要挂在 WCF Service 网站、IIS 上。

麻烦请网友们提供建议或解决方式,或相关 url,
本提问有提供资料一定就给分。

先谢谢各位。

[ServiceContract]
public interface IService
{
[OperationContract]
static string GetData(int value); //这里不能声明为 static
}

若上方代码,IService 接口里 GetDate 方法,移除 static 声明,只如下,只在 Service 类 的  GetData 方法,聲明為 static,則會變成以下的錯誤 :

public class Service : IService
{
public static string GetData(int value)
{
return "測試信息~";
}
}

 

錯誤    1    'Service' 未实作接口成员 'IService.GetData(int)'。'Service.GetData(int)' 无法实作接口成员,因为它是静态的。    C:\Inetpub\WCF090809\ServerSide\App_Code\Service.cs    6    14    C:\...\ServerSide\

问题补充: 要透过其他 Class 的 非 static method (instance method) 多包一层,即可:   http://topic.csdn.net/u/20101029/13/c6f41fde-710b-4867-a895-262fb969a735.html?seed=953430675&r=69452447#r_69452447 http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/7b1388a8-f295-445a-aed0-7e076951ea95
WizardWu的主页 WizardWu | 小虾三级 | 园豆:1402
提问于:2010-10-29 13:03
< >
分享
所有回答(2)
0

接口中不能用static,不是因为WCF的原因,C#的基础就是这样的。你可以使一下接口中的定义不用static看看

天神一 | 园豆:845 (小虾三级) | 2010-10-29 13:07
感谢回复。试了接口的方法定义不加 static,只有 Service 类中的方法加 static,就变成小弟我原来提问里,下方的第二种错误。 请问您及各位网友,WCF 遇上 static method ,是否能有其他方式处理,而不用 new 一个 instance 才再调用其 method.
支持(0) 反对(0) WizardWu | 园豆:1402 (小虾三级) | 2010-10-29 13:20
那还真不能实现
支持(0) 反对(0) 天神一 | 园豆:845 (小虾三级) | 2010-10-29 13:27
感谢您。还请其他网友再提供意见。
支持(0) 反对(0) WizardWu | 园豆:1402 (小虾三级) | 2010-10-29 13:37
0

终极答案是:不能不能不能不能不能不能不能不能不能

Everlonely | 园豆:115 (初学一级) | 2010-10-29 17:04
要透过其他 Class 的 非 static method (instance method) 多包一层,即可:   http://topic.csdn.net/u/20101029/13/c6f41fde-710b-4867-a895-262fb969a735.html?seed=953430675&r=69452447#r_69452447 http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/7b1388a8-f295-445a-aed0-7e076951ea95
支持(0) 反对(0) WizardWu | 园豆:1402 (小虾三级) | 2010-10-29 17:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册