首页 / 知识
关于C#:PostSharp-我编织-思想
2023-04-17 02:15:00

PostSharp - il weaving - thoughts
我正在考虑使用Postsharp框架来减轻应用程序方法日志记录的负担。 我使用Castle Windsor DynamicProxies在AOP中应用日志记录。我已经在将Castle用于其IoC容器,因此将其用于AOP对我而言是最少保留的途径。如果您想了解更多信息,请告诉我,我正在整理代码以将其发布为博客文章。 编辑 好的,这是基本的拦截器代码,基本不行,但是可以完成我需要的一切。有两个拦截器,一个拦截器记录所有日志,另一个拦截器允许您定义方法名称,以实现更精细的日志记录。此解决方案有赖于温莎城堡 抽象基类
完整日志记录
方法记录
postharp +1。已经使用了很多东西(包括尝试在C#代码中添加前置条件和后置条件),并且不知道如果没有它我该怎么做... 这在一定程度上取决于您将为该项目开发和支持多长时间。当然,IL编织是一项很好的技术,但是如果IL和/或程序集元数据格式再次更改(如1.1和2.0之间的更改)并且这些更改使该工具与新格式不兼容,会发生什么。 如果您依赖该工具,那么它将阻止您升级技术,直到该工具支持为止。由于没有任何保证(甚至可能继续发展,尽管看起来确实有可能),所以我会非常警惕在长期项目中使用它。 短期来看,没问题。 用它来做到这一点。很棒!我强烈推荐它! |
最新内容
相关内容
linux命令解决方案?
linux命令解决方案?,系统,管理,数据,电子,工作,电脑,软件,情况,不了,档案,linux处理/tmp文件空间不足1、删除缓存文件 缓存文件是临时存储在磁linux使用命令的方法?
linux使用命令的方法?,系统,信息,工具,标准,数据,命令,左下角,目录,文件夹,图标,linux的cd命令的使用方法1、cd ~:回到用户家目录。注:这得看你linux基本命令框架?
linux基本命令框架?,系统,基础,网络,设备,管理,基础知识,环境,管理系统,概念,技术,新手如何自学linux安装linux系统,把自己喜欢的linux发行版安linux命令和应用程序?
linux命令和应用程序?,软件,系统,环境,管理,基础,情况,位置,电脑,工具,中心,在linux下如何装应用程序?需要什么命令啊首先从官网下载hdf5,根据linux命令输入方法?
linux命令输入方法?,系统,电脑,密码,管理,地址,命令,网站,工具,首开,位置,linux终端输入~怎么弄中间在电脑上打开需要的Word文件进入。进入到文Python中什么是反射?使用方法有哪
Python中什么是反射?使用方法有哪些?,信息,培训,状态,术语,检测,反射,属性,对象,字符串,方法,反射这个术语在很多语言中都存在,并且存在大量的靠谱的Python爬虫框架都有哪几个?
靠谱的Python爬虫框架都有哪几个?,官网,培训,爬虫,专文,框架,统计数据,辅助工具,网页,程序,以下内容,一些同学普遍认为仅剩Python才能够顺利实Python中有哪些方法可以解压文件?
Python中有哪些方法可以解压文件?,工具,系统,工作,培训,文件,文件夹,方法,窗体,不同于,以下内容,在Python学习和日常使用中,很容易造成文件过大Python列表类型list合并有哪些方法
Python列表类型list合并有哪些方法?,培训,方法,列表,可能会,数组,切片,下文,字符串,数据类型,请看,在Python编程语言中,有各种数据类型,比如字符零基础学习Python的四种方法
零基础学习Python的四种方法,基础,代码,基础知识,培训,发展,时间,知识,书籍,初学者,练习,近年来,随着移动互联网的发展,对Python人才的需求越来如何在Python中定义类方法和修改类
如何在Python中定义类方法和修改类属性?,代码,方法,培训,对象,实例,定义,结果,示例,赋值,属性,Python中的类还可定义使用@classmethod修饰的类提高Python 效率的 5 种高级方法
提高Python 效率的 5 种高级方法,代码,数字,函数,有限,设备,项目,工具,培训,列表,内存,任何编程语言的高级特征通常都是通过大量的使用经验才