在MonoDevelop / MonoTouch中使用WCF:如何使用app.config文件?

时间:2011-07-12 14:35:47

标签: mono xamarin.ios monodevelop

我在我的MT项目中添加了对WCF服务的Web引用(在此处使用MonoDevelop 2.4.2)。 我正在尝试回收Visual Studio使用的app.config文件。我将它复制到我的MT的根目录中,并在MonoDevelop中指定“复制到输出目录”。它仍然无效。 在MonoDevelop中使用app.config的正确方法是什么?

2 个答案:

答案 0 :(得分:7)

不幸的是,您无法在Monotouch中使用app.config文件。您必须自己在代码中创建所有绑定。在我们的一个项目中,这就是我们所做的:

public static ServiceClient GetClient()
{
    BasicHttpBinding binding = new BasicHttpBinding();
    binding.OpenTimeout = new TimeSpan(0,0,10);
    binding.CloseTimeout = new TimeSpan(0,0,10);
    binding.SendTimeout = new TimeSpan(0,0,10);
    binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
    binding.BypassProxyOnLocal = false;
    binding.AllowCookies = false;


    // snip - we set all the properties found in the serverside config file in code here

    EndPointAddress endpointAddress = new EndpointAddress("https://www.domain.com/ServiceClient.svc");
    ServiceClient client = new ServiceClient(binding, endpointAddress);
    return client;
}

您需要遍历并设置在服务器的app.config文件中找到的每个属性,确保值完全匹配,否则这将无效。 (如果我误解了你的问题,那么我道歉!)。

答案 1 :(得分:-1)

我认为您只需要正确命名.config文件并将其放在输出目录中:

myapp.exe.config

我不认为MD会像VS一样自动为你做这件事。

相关问题