Comments (7)
This is strange: the current version of Mr. Advice uses Fody 1.29.3 and Cecil 0.9.6.1 which are both the latest version of their product. So your error shows a request for Cecil 0.9.6.0, and this what I don't understand. Is there any way I can reproduce your problem?
from mradvice.
TestMrAdvice.zip
So, I have created a blank DLL project and added Mr.Advice from Nuget. It can't be compiled. Complete project is embedded.
from mradvice.
For some strange reason (I also had this problem once), your version of Fody (on which Mr. Advice relies) was outdated. Upgrading from 1.28 to 1.29 fixes the build.
I wanted to upload the fixed solution in a zip, but GitHub tells me it does not want it (WTF?).
Anyway, just upgrade Fody and you'll get a working solution. If it's OK, you can close this issue... And let me know what do you think of Mr. Advice π
from mradvice.
I have manually UPGRADED to Fody 1.29.3, and fixed FodyWeavers.xml to
<?xml version="1.0" encoding="utf-8"?>
<Weavers>
<MrAdvice />
</Weavers>
..now it works, thank you!
from mradvice.
Mr.Advice will be under huge load test, PostSharp must go...
from mradvice.
Mr. Advice is open source, so you're free (and welcome) to contribute.
Why leaving PostSharp? (I did the same, but I like to read other opinions).
from mradvice.
PostSharp is not a part of open stack, that is bad for huge projects.
We use only two aspects for all modules in our architecture. Performance counter and logged try..catch surrounding. For every method in DLLs is counted quantity of calls and execution time. We can monitor it real-time and make decision about the quality of the code.
But PostSharp wants something more and always grows, makes some breaking changes.
Actually now, we've a group of developers which still work with their modules on VS2012 and have to use PS v.3 (can't use v4) and others work with VS2015 where they MUST use PS v.4.
What is good in PS, in compare with all others AOP frameworks, is that they change IL code of the weaved method self, instead of making a wrapper:
return (string)Invocation.ProceedAdvice(this, null, MethodBase.GetCurrentMethod(), MethodBase.GetMethodFromHandle(methodof(Class1.Testβ()).MethodHandle), false, null);
PS must be a bit faster.
from mradvice.
Related Issues (20)
- AssemblyName starting with "Microsoft." skipped by Mr.Advice HOT 3
- build error in x64 with IMethodWeavingAdvice HOT 2
- Parameter for Parameter Advice HOT 2
- Example - Advice for Event handlers HOT 6
- Wrong order of advices in class libraries HOT 5
- Failed to emit module HOT 4
- dotnet publish throw exception when use --self-contained HOT 8
- Add Changelog HOT 2
- Failed to resolve assembly: System.Private.CoreLib, Version=5.0.0.0 HOT 20
- Dotnet core DI and logging HOT 6
- Incorrect version in MrAdvice.dll HOT 11
- MrAdvice.Weaver.exe fails on Visual Studio 2017 HOT 2
- MrAdviceWeaverPath not defined in Xamarin.Android project HOT 8
- dotnet build on linux build agents
- Containerize the solution in linux with .NET Core 3.1 HOT 4
- Crash when weaving in azure linux build agent .net 6 HOT 4
- StackTraceHiddenAttribute
- Support for .NET 7 HOT 1
- NullReferenceException on build
- No compatible code running on the thread HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mradvice.