我有一個方面,通常使用Postsharp構建的緩存。 我的問題是,當PostSharp編織的代碼,結果代碼不會對方法的屬性了,這是有道理的,有幾個原因:使用PostSharp在方法中添加屬性
- 它已不再有用,因爲它的目的對於PostSharp
- 它可以在組件級應用並沒有[CacheAttribute]受影響的方法與
但開始..我試圖做一些單元測試,我想看看屬性在結果代碼,所以我可以說: 「檢查方法x是否有一個緩存屬性說它應該緩存50秒「。這將是我所有的單元測試,而不是每次都嘲笑緩存管理器。該方面適用於我想要的許多方法,並且我可以單獨測試方面,只通過檢查屬性來檢查是否應用了緩存。
那麼,我怎麼能說Postharp在受影響的方法上編織屬性,這與用於編織代碼的CacheAttribute相同?好的,它可以是其他屬性,因此它們不會發生衝突,但必須具有CacheAttribute的屬性。
http://www.postsharp.net/blog/post/PostSharp-Principals-Day-12-e28093-Aspect-Providers-e28093-Part-1 - 它告訴我如何在字段和屬性上添加屬性,但不在方法上添加屬性。
乾杯。