星空网 > 软件开发 > ASP.net

利用Spring.NET实现WCF的AOP编程

    在WCF中,有时我们希望实现AOP编程,用于权限验证、日志记录等,而Spring.NET就是一种很好的实现工具。

    1、引用Spring.NET相关DLL

    下载Spring.NET包,并在WCF项目中引用相关DLL:

                               利用Spring.NET实现WCF的AOP编程

    2、添加WCF服务

    在WCF项目中添加相关WCF服务:

    契约代码:

using System.ServiceModel;namespace MyWcfTest{  [ServiceContract]  public interface IWcfContract  {    [OperationContract]    string GetData(string value);  }}

    服务实现:

namespace MyWcfTest{  public class ImplementService : IWcfContract  {    public string GetData(string value)    {      return string.Format("你输入的是:{0}", value);    }  }}

    添加WcfServer.svc文件:

<%@ ServiceHost Language="C#" Debug="true" Service="WcfServer" Factory="Spring.ServiceModel.Activation.ServiceHostFactory" %>

    注意,这里添加了Spring.NET的相关Factory,同时Service变成了我们自定义的名字,它在稍后的配置文件中定义。

    3、配置Spring.NET

    添加Spring.NET配置文件MyObjects.

<??><objects ="http://www.springframework.net"  ="http://www.w3.org/2001/  xsi:schemaLocation="http://www.springframework.net    http://www.springframework.net/xsd/spring-objects.xsd"> <object type="Spring.Aop.Framework.AutoProxy.TypeNameAutoProxyCreator, Spring.Aop">  <property name="TypeNames">   <list>    <value>*Service*</value>   </list>  </property>  <property name="InterceptorNames">   <list>    <value>aroundAdvice</value>   </list>  </property> </object> <object id="aroundAdvisor" type="Spring.Aop.Support.NameMatchMethodPointcutAdvisor, Spring.Aop">  <property name="Advice" ref="aroundAdvice"/>  <property name="MappedNames">   <list>    <value>Find*</value>   </list>  </property> </object> <object id="aroundAdvice" type="MyWcfTest.MyAroundAdvice, MyWcfTest"/>  <object id="WcfServer" type="MyWcfTest.ImplementService, MyWcfTest" />  <object id="htService1" type="MyWcfTest.Service1, MyWcfTest" /></objects>

    在WCF应用程序的配置文件Web.config中添加下列配置内容:

 <configSections>  <sectionGroup name="spring">   <section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core"/>   <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core"/>  </sectionGroup> </configSections> <spring>  <context>   <resource uri="~/MyObjects. />   <resource uri="config://spring/objects" />  </context>  <objects ="http://www.springframework.net" /> </spring>

   4、注册Spring.NET上下文

    新增应用程序全局设置文件Global.asax,在其中的Application_Start方法中添加下面的代码,用以注册Spring.NET上下文。

    protected void Application_Start(object sender, EventArgs e)    {      ContextRegistry.GetContext();    }

    由此配置完成,即可实现针对WCF的AOP编程。




原标题:利用Spring.NET实现WCF的AOP编程

关键词:.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

同城餐饮行业怎么做短视频? :https://www.kjdsnews.com/a/1735990.html
宠物用品市场当下趋势怎么样?人口分化或带来新消费:https://www.kjdsnews.com/a/1735991.html
2月营销日历来了!跨境电商热卖节点、营销策略 | 建议收藏:https://www.kjdsnews.com/a/1735992.html
重要!亚马逊多项新变动,事关每一位卖家:https://www.kjdsnews.com/a/1735993.html
注册离岸公司正确选择银行账户及注意事项(下):https://www.kjdsnews.com/a/1735994.html
海外网红营销:街头时尚品牌Aelfric Eden如何靠海外营销在TikTok获得9亿曝光!:https://www.kjdsnews.com/a/1735995.html
宠物梳专利查询分析:https://www.kjdsnews.com/a/1842293.html
温州旧货市场有玻璃柜卖吗?:https://www.vstour.cn/a/411246.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流