1

我们的应用程序是部署在分布式环境中的企业应用程序。这是一个连接到另一台服务器上的 WCF 项目的 ASP.NET MVC 2.0 项目。我们需要的是使我们的业务模块可重用和可测试。

那么对于 WCF 来说,最好的解耦方法是什么?是温莎城堡 WCF 设施吗?还是应该使用Common Service Locator方法?为什么?

4

1 回答 1

1

以下是如何创建Execute(string type, string json)方法的示例:

[OperationContract]
public void Execute(string type, string json)
{
    Type commandType = Type.GetType(commandType);

    Type commandHandlerType = typeof(ICommandHandler<>).MakeGenericType(commandType);

    dynamic commandHandler = Bootstrapper.GetInstance(commandHandlerType);

    dynamic command = JsonConvert.DeserializeObject(json, commandType);

    commandHandler.Handle(command);
}

该代码示例使用JSON.NET将 JSON 反序列化为对象。XmlSerializer如果您更喜欢 XML,也可以使用该类。

于 2013-08-12T11:05:16.107 回答