问题描述
这是我的第一个WCF服务,因此请谅解。 :)
- 我有一个现有的ASP.Net网站,到目前为止,该网站一直运行良好。
- 使用VS 2017,我添加了一个启用了WCF Ajax的新服务。
- VS创建了.svc和.cs文件,并且还对web.config进行了修改。
- 我确保在服务器角色中启用了HTTP激活。
通过浏览器导航到服务URL时,将加载服务页面。好。 当我尝试添加“ / DoWork”以访问默认创建的方法时,出现404错误。
我一直在疯狂尝试其他教程建议。什么也没做。 我一定缺少简单的东西。服务器级别可能未启用某些功能? 我认为VS添加的WCF代码可以正常工作,对吧?
为什么要404 ??? 我想念什么???
感谢您的帮助和问候,
Udar
解决方法
这是web.config的相关部分
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="NativeAppConnectorWCFAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"
multipleSiteBindingsEnabled="true" />
<services>
<service name="NativeAppConnectorWCF">
<endpoint address="" behaviorConfiguration="NativeAppConnectorWCFAspNetAjaxBehavior"
binding="webHttpBinding" contract="NativeAppConnectorWCF" />
</service>
</services>
</system.serviceModel>
,
如果使用webhttp绑定,则需要将webHttp添加到端点行为:
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:orientation="vertical"
tools:parentTag="androidx.appcompat.widget.LinearLayoutCompat">
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal">
<ImageView
android:layout_width="88dp"
android:layout_height="88dp"
android:layout_gravity="center"
android:src="@drawable/dashed_circle" />
<TextView
android:id="@+id/value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
tools:text="12" />
<TextView
android:id="@+id/default_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
tools:text="6" />
</FrameLayout>
<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="-3dp"
tools:text="Защита" />
</merge>
这是我的配置文件,并且启用了帮助文档:
<style name="Widget.ParamView" parent=""> <!-- parent="android:Widget" ??? -->
<item name="valueTextAppearance">@style/TextAppearance.AppCompat</item>
<item name="defaultValueTextAppearance">@style/TextAppearance.AppCompat</item>
<item name="labelTextAppearance">@style/TextAppearance.AppCompat</item>
</style>
如果问题仍然存在,请随时告诉我。