支持ajax 跨域调用的WCF搭建
1.新建一个"ASP.NET空Web应用程序"项目。
2.新建一个“WCF服务(支持ajax)”。
3.修改WCFAjaxService.svc下的WCFAjaxService.svc.cs文件
如下所示(示例):
namespace WCF_Ajax跨域调用示例 { [ServiceContract(Namespace = "WCF_Ajax跨域调用示例")] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] [JavascriptCallbackBehavior(UrlParameterName = jsoncallback")] public class WCFAjaxService { [OperationContract] [WebGet(ResponseFormat = WebMessageFormat.Json)] public List<UserInfo> GetUser() { return new List<UserInfo>(){ new UserInfo(){Id=1,Name=jayjay1"},2,0)">jayjay2"}}; } } [DataContract] class UserInfo { [DataMember] int Id { get; set; }
[DataMember]
string Name { set; } } }
注意别忘了给Service打上
[JavascriptCallbackBehavior(UrlParameterName = "jsoncallback")]
标记。
4.修改Web.config配置文件
<system.serviceModel> bindings> webHttpBinding> binding name="HttpJsonBinding" crossDomainScriptAccessEnabled="true"></binding</behaviors> endpointBehaviors> behavior ="AjaxServiceAspNetAjaxBehavior"> enableWebScript /> behaviorserviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled/> servicesservice ="AjaxService"endpoint address="" behaviorConfiguration="AjaxServiceAspNetAjaxBehavior" binding="webHttpBinding" bindingConfiguration contract="AjaxService" /> service> >