【问题标题】:Xamarin Project works fine in Android, throws "405" errors in UWP when calling WCFXamarin 项目在 Android 中运行良好,在调用 WCF 时在 UWP 中引发“405”错误
【发布时间】:2019-01-17 12:45:17
【问题描述】:

我有一个应用程序在我将 Android 设置为启动项目时运行良好,但在我将 UWP 作为启动项目时抛出错误。通过在这里和那里注释掉代码,我发现当我调用我的 WCF 时发生了错误。下面的第二行导致错误:

        _client = new Service1Client(binding, Endpoint);
        var result = _client.CreateUser(Txt_UserName.Text , Txt_Password.Text);

到目前为止我能得到的错误信息是:

Unhandled exception at 0x0878DC3C (Windows.UI.Xaml.dll) in MyApp.UWP.exe: 
0xC000027B: An application-internal exception has occurred (parameters: 
0x172E2738, 0x00000006). occurred

显然,它在崩溃之前正在运行:

#define BEGIN_DELEGATE_MAP(CLASS)\
    ref class delegate_proxy_type;\
    msclr::delegate_map::internal::delegate_proxy_factory<CLASS> m_delegate_map_proxy;\
    \
    ref class delegate_proxy_type\
    {\
            CLASS* m_p_native_target;\
    public:\
            delegate_proxy_type(CLASS* pNativeTarget) : m_p_native_target(pNativeTarget) {}\
            void detach() { m_p_native_target = NULL; }

#define EVENT_DELEGATE_ENTRY(MEMBER,ARG0,ARG1)\
    void MEMBER(ARG0 arg0,ARG1 arg1)\
    {\
            if(m_p_native_target == NULL)\
            throw gcnew System::ArgumentNullException("Delegate call failed: Native sink was not attached or has already detached from the managed proxy (m_p_native_target == NULL). Hint: see if native sink was destructed or not constructed properly");\
            \
            m_p_native_target->MEMBER(arg0,arg1);\
    }

#define END_DELEGATE_MAP()\
    };

#define MAKE_DELEGATE(DELEGATE,MEMBER)\
    gcnew DELEGATE(m_delegate_map_proxy.get_proxy(this),&delegate_proxy_type::MEMBER)

为了进一步缩小此错误的原因,我创建了一个简单的独立 UWP 应用,并尝试将其连接到 WCF。在这个程序上,当我调用 WCF 方法时收到此错误消息:

 'The remote server returned an unexpected response: (405) Method Not Allowed.'

关于这个错误的原因有什么想法吗?提前致谢。

【问题讨论】:

  • 请提供更多详细信息,例如配置是调试还是发布,平台是 x86、x64 或 arm,Visual Studio 和 Xamarin 版本,使用的 Nuget 包等。
  • 我已经进一步缩小了错误范围。如果您还需要所有这些详细信息,请告诉我。
  • 在询问有关代码中的错误或异常的问题时,如果您具体告诉我们该错误/异常是什么,将会非常有帮助。
  • 对不起,我删除了我提到的部分,我无法收到任何可用的错误消息。我会重新发布我收到的错误消息。
  • 我不确定您的服务托管在哪种网络环境中。您需要根据不同的网络环境启用不同的功能(例如,Internet (Client &amp; Server)Private Networks (Client &amp; Server)Enterprise Authentication 等)。请参阅此link 了解更多详情。

标签: c# wcf xamarin uwp visual-studio-2017


【解决方案1】:

根据@Xavier:

更改应用清单中的设置解决了我的问题!就这么简单。谢谢。

【讨论】:

    猜你喜欢
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    • 2018-05-27
    • 1970-01-01
    • 2019-01-10
    • 2021-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多