我试图弄清楚是否有办法“查找所有引用”(使用 VS 功能,而不是 Control+F 整个解决方案)。当涉及到 WCF 数据和 OperationContracts 时。如果不清楚:
namespace WcfTestReferences
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello world");
DoStuff();
ServiceReference1.Service1Client client = new ServiceReference1.Service1Client();
var results = client.GetData(42);
Console.WriteLine(results);
}
static void DoStuff() { }
}
}
namespace WcfTestReferences.WCFApp
{
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
}
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
}
}
解决方案如下所示:
现在,如果我DoStuff()
用代码镜头看,我可以看到它实际上有一个引用:
但是对于在 wcf 服务中调用的方法,情况并非如此:
在上面,对接口/方法的唯一引用是接口/方法。我了解我希望的参考资料(来自主要方法):
var results = client.GetData(42);
不存在,因为客户端是生成的,实际上不是我的Service1
实现......但是有没有办法改变这个?
在现实世界中,我们有一个包含数千种方法的 WCF 层,其中许多方法没有使用 - 但我不能依靠 Code Lens/Find all references 来做出这个决定。有没有办法改变这种行为?