作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 PostSharp 向 WebMethod 添加方面。
下面是我的方面(它什么都不做......不想编译):
public class MyAspect : OnMethodBoundaryAspect, ISerializable
{
public override void OnException(MethodExecutionEventArgs eventArgs)
{
}
public override void OnEntry(MethodExecutionEventArgs eventArgs)
{
}
public void GetObjectData(SerializationInfo info, StreamingContext context)
{
}
}
我的网络方法看起来像:
[MyAspect]
[WebMethod]
public void MyWebMethod()
{
//...
}
当我构建项目时,出现错误:
Erreur 346 PostSharp:无法序列化方面:Le type 'xxxx.MyAspect' dans l'assembly 'zzzzz, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' n'est pas marqué comme sérialisable.. unknown_location xxxxx
它告诉我我的方面没有被标记为可序列化...
我能做什么?仅供引用,我对项目其余部分的这些方面没有任何问题。
最佳答案
您应该将 Serializable
属性添加到您的 MyAspect
。所以:
[Serializable]
public class MyAspect : OnMethodBoundaryAspect
而不是继承ISerializable
接口(interface)。有关差异,请参阅 this question .
关于c# - postshap : OnMethodBoundaryAspect and WebMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4247404/
我正在使用 PostSharp 向 WebMethod 添加方面。 下面是我的方面(它什么都不做......不想编译): public class MyAspect : OnMethodBoundar
我是一名优秀的程序员,十分优秀!