如何自定义Service.svc的cs文件
我在公司的框架学习的时候发现它的Service1.svc下没有cs文件,双击后发现以下代码:
<%@ ServiceHost Language="C#" Debug="true" Service="OA_Service" CodeBehind="~/App_Code/OA_Service.cs" %>
也就是指向了App_Code文件夹下的OA_Service.cs
打开OA_Service.cs
是这样的:
using System;
using System.Linq;
using System.Xml.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using System.ServiceModel.Activation;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Configuration;
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class OA_Service
{
[OperationContract]
下面都是方法……
}
看了上面的代码后,我就想自己也来自定义一个,然后我新建项目,新建wcf服务类,然后我删除了它自带的cs文件,自己建了一个名叫websever.cs的文件,双击service1.svc,把代码改成<%@ ServiceHost Language="C#" Debug="true" Service="OA_Service" CodeBehind="websever.cs" %>——结果是不行的,看起来没有任何关联性。怎么回事呢,求大侠指教
[解决办法]
<%@ ServiceHost Language="C#" Service="项目命名空间.OA_Service"%>
你可以使用这种方式将Svc和svc.cs文件进行分离~就算你的svc.cs和契约文件分离在另外一个dll都可以(当然你需要引用这个dll)
[解决办法]
分离svc和cs文件,需要同时修改命名空间名,这样在编译的时候才能保持一致性。