2016-11-18 19 views
1

デバッグ時にEventReceiverを起動できないようです。私はGACでデバッグしています。デバッグ時にSPItemEventReceiverが起動しない

私はSharepointまたはSP Objectsの専門家ではありません。

私は、ユーザーが、私は

Dropdownbox

[ChoiceField(Name = F.Adgang, DisplayName = "Adgang", Required = true, DefaultValue = "Alle", Choices = new string[] { "Alle", "Kun indehavere" })] 
    public bool Adgang 
    { 
     get { return G(); } 
     set { S(value); } 
    } 

Model.cs

public class Model : SPFeatureReceiver 
{ 

    public override void FeatureActivated(SPFeatureReceiverProperties properties) 
    { 
     SPSite site = properties.Feature.Parent as SPSite; 

     site.RootWeb.CreateContentType<CourseAndEvent>(); 
     site.RootWeb.CreateContentType<DanboligNewsPage>(); 

     using (SPWeb web = site.OpenWeb()) 
     { 
      var list = web.Lists[""]; 
      var e = list.EventReceivers.Add(Guid.NewGuid()); 

      e.Name = "test_All"; 
      e.Type = SPEventReceiverType.ItemAdded | SPEventReceiverType.ItemDeleted | SPEventReceiverType.ItemDeleting; 
      e.Assembly = typeof(NewsReceiver).Assembly.FullName; 
      e.Class = typeof(NewsReceiver).FullName; 
      e.SequenceNumber = 10; 
      e.Update(); 

      list.Update(); 
      web.Update(); 
     } 


    } 

} 

NewsReceiver.csを作成しているdropdownboxの値を変更したときに何かをしたいです

class NewsReceiver : SPItemEventReceiver 
{ 
    public override void ItemAdded(SPItemEventProperties properties) 
    { 
     base.ItemAdded(properties); 

     SPListItem item = properties.ListItem; 
     string folderName = item["Name"].ToString(); 
     string folderUrl = SPUtility.ConcatUrls(SPUtility.ConcatUrls(item.Web.Url, item.ParentList.RootFolder.Url), folderName); 

     SPFile file = item.File; 
    } 

    public override void ItemDeleting(SPItemEventProperties properties) 
    { 
     base.ItemDeleting(properties); 
    } 

    public override void ItemDeleted(SPItemEventProperties properties) 
    { 
     base.ItemDeleted(properties); 
    } 
} 

デバッグ時に誰もItemEventsが起動しない理由を教えてもらえますか?

答えて

0

次のコード行をコードのどこかに設定してください。これは、デバッガを起動します:

System.Diagnostics.Debugger.Launch(); 

MSDN

をしかし、あなたは正しくしたいオブジェクトにEventReceiverを取り付けたhaventは場合、それは助けにはなりません。私はSharePoint Managerでこれをチェックして、EventReceiversが正しく接続/登録されているかどうかを確認することをお勧めします。

0

デバッガをw3wp.exeに接続していると仮定します。あなたは正しいものを持っていると確信していますか? また、イベント受信者のデバッグについてthis MSDN pageを確認しましたか? (以前は関連性があります)

あなたのイベントレシーバーがリストまたはそれを含むサイトに確実に接続されていますか? hereを参照してください。

関連する問題