inversionhourglass / Rougamo

Compile-time AOP component. Works with any method, whether it is async or sync, instance or static. Uses an aspectj-like pattern to match methods.
MIT License
393 stars 47 forks source link

关于Rougamo.Fody引用问题 #42

Closed Harper0712 closed 1 year ago

Harper0712 commented 1 year ago

我的操作是这样的:我在我项目中的Common Library中引用了Rougamo.Fody,并且新建了一个Logging类,它继承了MoAttribute并重写了其中的4个方法,然后让同一解决方案中的Web项目引用了这个Common Library,随后在Web项目的方法上加上了Logging。但是我发现Logging对这个方法并没有起作用,随后我在Web项目中也引用了Rougamo.Fody,再次执行这个方法,Logging就起作用了。

所以,凡是想用到Common Library中的Logging的项目,除了要引用Common Library以外,还需要单独再引用Rougamo.Fody对吗?

inversionhourglass commented 1 year ago

对的。不过如果你将你的Common Library打包成一个nuget包给你其他项目使用,你可以修改你Common Library的项目文件,在Rougamo.Fody的引用节点添加PrivateAssets="contentfiles;analyzers",修改之后就像下面这样:

<PackageReference Include="Rougamo.Fody" Version="1.4.0" PrivateAssets="contentfiles;analyzers" />

这样修改之后你直接引用你的Common Library就行。

Harper0712 commented 1 year ago

Nice, 感谢解答。Common Library最终肯定会打包成nuget的,只是目前正在local做测试发现了这个问题。建议在描述中可以加上这个tips。翘首以盼2.0,不知道什么时候能用上?^_^

inversionhourglass commented 1 year ago

这段时间有点别的事,也有点偷懒,可能要再等些时间,过几天勤快点,感谢你们的支持哈