问题已在PostSharp 4.3.27
中修复在C#中给出以下代码
var obj = new
{
p0 = 0,
p1 = 1
p2 = 2,
// and so on until 127 ...
p127 = 127
}
尝试在启用PostSharp的情况下构建项目时出现此错误:
严重级代码说明项目文件行抑制状态
错误错误:
未处理的异常(4.3.25.0,postsharp-net40-x86-srv.exe,CLR 4.0.30319.394802,Release):文件c:\ users \ johnm \ documents \ visual studio 2015 \ Projects \ PostSharpTest \ PostSharpTest \ obj \ Debug \ Before-PostSharp \ PostSharpTest.exe不是有效的.NET程序集。请参阅下文了解详情。 PostSharpTest c:\ users \ johnm \ documents \ visual studio 2015 \ Projects \ PostSharpTest \ PostSharpTest \ POSTSHARP
错误System.BadImageFormatException:文件c:\ users \ johnm \ documents \ visual studio 2015 \ Projects \ PostSharpTest \ PostSharpTest \ _ obj \ Debug \ Before-PostSharp \ PostSharpTest.exe不是有效的.NET程序集。 ---> PostSharp.Sdk.AssertionFailedException:类型签名中位置元素类型的枚举^ Bw + U + DEY6J8e的值128无效。 在PostSharp.Sdk.Binary.ModuleReader.ReadTypeSignature(BufferReader& _0) 在PostSharp.Sdk.Binary.ModuleReader.ReadTypeSignature(BufferReader& _0) 在PostSharp.Sdk.Binary.ModuleReader.ImportTypeSpec(Int32 _0) 在PostSharp.Sdk.Binary.ModuleReader.ImportTypeSpecs() 在PostSharp.Sdk.Binary.ModuleReader.ReadModule() 在PostSharp.Sdk.Binary.ModuleReader.ReadModule() 在PostSharp.Sdk.Binary.ModuleReader.ReadModule(ReadModuleStrategy _0) 在PostSharp.Sdk.CodeModel.Domain.LoadAssembly(String assemblyLocation,LoadAssemblyOptions options) 在PostSharp.Sdk.Extensibility.ModuleLoadDirectFromFileStrategy.Load(域域) 在PostSharp.Sdk.Extensibility.Project。^ LvMUl75 +(ModuleLoadStrategy _0) 在PostSharp.Sdk.Extensibility.Project。^ 63o9P8x3(ModuleDeclaration _0,ModuleLoadStrategy _1,Domain _2,ProjectInvocationParameters _3,Boolean _4) 在PostSharp.Sdk.Extensibility.Project.CreateInstance(域域,ProjectInvocation projectInvocation,Boolean reuseDomain) 在PostSharp.Hosting.PostSharpObject.InvokeProject(ProjectInvocation projectInvocation) 在PostSharp.Hosting.Program.ExecuteImpl()PostSharpTest c:\ users \ johnm \ documents \ visual studio 2015 \ Projects \ PostSharpTest \ PostSharpTest \ POSTSHARP
消息
枚举的值 128 无效^ Bw + U + DEY6J8e在类型签名中的位置元素类型。
似乎有一些意义,但我不熟悉PostSharp内部。
删除p127工作正常。还有其他人遇到过这种限制吗?
答案 0 :(得分:1)
这在PostSharp 4.3.27
中得到修复答案 1 :(得分:-1)
MulticastTargets枚举
多播自定义属性(MulticastAttribute)可以应用的各种目标。
因此InstanceConstructor的最大值为128