您的位置:首页 > Web前端 > JavaScript

第一节:ExtJS调用WCF系列-----实现JSON传递

2007-12-07 18:14 363 查看
首先我们打开我们的VS 新建一个Asp.Net WebApplication Project,(不要给我说新建网站,我讨厌那个东东) 命名为ExtJSAndWCFChapter1 如图:

using System;

using System.Data;

using System.Configuration;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Runtime.Serialization;

namespace ExtJSAndWCFChapter1

接下来编写EmployeeService.cs的代码,代码如下:

using System;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.ServiceModel.Activation;

using System.ServiceModel.Web;

using System.Collections.Generic;

namespace ExtJSAndWCFChapter1

主要就是这一句 [WebInvoke(BodyStyle = WebMessageBodyStyle.Wrapped, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "/Create")]

意思就是说这个方法传递输入和输出参数都是Json形式,并且可以用后面加Create的形式来访问该方法,至于前面那个BodyStyle = WebMessageBodyStyle.Wrapped是什么意思留着下节详细说明

接下来修改Web.Config文件,其实只是是把<enableWebScript /> 替换为<webHttp/>代码如下(一部分)

<system.serviceModel>

<behaviors>

<endpointBehaviors>

<behavior name="ExtJSAndWCFChapter1.EmployeeServiceAspNetAjaxBehavior">

<!--<enableWebScript />-->

<webHttp/>

</behavior>

</endpointBehaviors>

</behaviors>

<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

<services>

<service name="ExtJSAndWCFChapter1.EmployeeService">

<endpoint address="" behaviorConfiguration="ExtJSAndWCFChapter1.EmployeeServiceAspNetAjaxBehavior" binding="webHttpBinding" contract="ExtJSAndWCFChapter1.EmployeeService"/>

</service>

</services>

</system.serviceModel>

现在可以编译并访问那个EmployeeService.svc文件,后面加上UriTemplate的值:例如http://localhost:1481/EmployeeService.svc/get。会得到“Method not allowed”的提示。如果访问出现错误,请确认修改的Web.Config是否正确。

接下来编写Default.aspx的代码:代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ExtJSAndWCFChapter1._Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Untitled Page</title>

<link rel="stylesheet" type="text/css" href="ExtJS/resources/css/ext-all.css" />

<!-- GC -->

<!-- LIBS -->

<script type="text/javascript" src="ExtJS/adapter/ext/ext-base.js"></script>

<script type="text/javascript" src="ExtJS/ext-all-debug.js"></script>

<script type="text/javascript" src="ExtJS/ext-all.js"></script>

<!-- ENDLIBS -->

<script type="text/javascript" language="javascript">

</script>

</head>

<body>

<form id="form1" runat="server">

<div>

<h3>

Create:</h3>

<p id="create-p">

</p>

<h3>

Get:</h3>

<p id="get-p">

</p>

<h3>

GetAll:</h3>

<p id="getall-p">

</p>

<h3>

GetByNum:</h3>

<p id="GetByNum-p">

</p>

<p id="errors">

</p>

</div>

</form>

</body>

</html>

最终的运行效果:



源代码下载在这里
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: