チームディスカッションリストのユーザーのアラートを更新しようとすると、このエラーが発生します。 私のコードは次のとおりです。ユーザーのアラートを更新しようとすると「アクセスが拒否されました」
SPUser user = mysite.OpenWeb().CurrentUser;
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite site = new SPSite(mysite.ID);
SPWeb myweb = site.OpenWeb();
string id = this.Page.Request.QueryString["RootFolder"].ToString();
string[] rootfolder = id.Split(@"//".ToCharArray());
myweb.AllowUnsafeUpdates = true;
SPList mylsit = myweb.Lists["Team Discussion"];
SPListItem item = mylsit.GetItemById(21);
SPUser curruser = myweb.EnsureUser(user.LoginName);
Response.Write(curruser.LoginName);
SPAlert newAlert = user.Alerts.Add();
newAlert.AlertType = SPAlertType.Item;
newAlert.Item = item;
newAlert.Properties["eventtypeindex"] = "1";
newAlert.AlertFrequency = SPAlertFrequency.Immediate;
newAlert.Update(false);
myweb.AllowUnsafeUpdates = false;
});
とalert.update()が実行されているときに私はエラーを取得しています。 「重要!」:
あなたには、いくつかをやっていると思われる、私はノートを見ることができる唯一のことは、RunWithElevatedPrivileges機能上のMSDNの記事下のセクションで、この
このエラーは修正されましたが、電子メールアラートは機能しません。コードは正常に動作しています。私は、Site Settigs - > User alertsをチェックすることでこれを確認しました。唯一の問題は、電子メールがユーザーに送信されないことです。上記のコードでは、欠落している要素はありますか? – Abhimanyu
私も同じ問題に直面しています。アクセス拒否エラーが発生しています。しかし警告が設定されており、歓迎電子メールはユーザーに送信されません。アプリケーションプールIDユーザーはファーム管理者、サイトコレクション管理者です。それでも同じエラー。どのようにこれを解決しましたか? – James123