static RelatedPosts() { Post.Saved += new EventHandler<SavedEventArgs>(Post_Saved); } static void Post_Saved(object sender,SavedEventArgs e) { if (e.Action == SaveAction.Update) { Post post = (Post)sender; if (_Cache.ContainsKey(post.Id)) _Cache.Remove(post.Id); } }
我转换为:
Shared Sub New() Post.Saved += New EventHandler(Of SavedEventArgs)(AddressOf Post_Saved) End Sub Private Shared Sub Post_Saved(ByVal sender As Object,ByVal e As SavedEventArgs) If e.Action = SaveAction.Update Then Dim post As Post = DirectCast(sender,Post) If _Cache.ContainsKey(post.Id) Then _Cache.Remove(post.Id) End If End If End Sub
解决方法
用这个
AddHandler Post.Saved,AddressOf Post_Saved
代替
Post.Saved += New EventHandler(Of SavedEventArgs)(AddressOf Post_Saved)