Das Feld, das Sie aktualisieren möchten, weist beim programmgesteuerten Hinzufügen eines Elements zur Liste möglicherweise einen schreibgeschützten Fehler auf
-
10-12-2019 - |
Frage
Ich füge ein Listenelement von einer Anwendungsseite hinzu, die von der Webpartseite umgeleitet wird.
Mein Code ist :
protected void Page_Load(object sender, EventArgs e)
{
SPSite site = new SPSite("http://bipc11:1234/sites/webparts");
SPWeb web = site.RootWeb;
web.AllowUnsafeUpdates = true;
SPUser currentUser = web.CurrentUser;
SPList list = web.Lists["Cart"];
SPListItem item = list.AddItem();
item["Picture"] = Request.QueryString["title"];
Response.Write("<script> alert('Pictrue Updated')</script>");
item["User"] = currentUser;
Response.Write("<script> alert('User Updated')</script>");
item.Update();
Response.Write("<script> alert('Item Updated')</script>");
web.Update();
web.AllowUnsafeUpdates = false;
Response.Write("<script> alert('Value Added To Cart Successfully')</script>");
Response.Redirect(Microsoft.SharePoint.Utilities.SPUrlUtility.CombineUrl(web.Url, "/SiteAssets/WebPartPage.aspx"));
}
Hier Feld Picture
ist vom Typ look up in Cart
Liste. User
ist die Art der Person oder Gruppe.Java-Skript zum Umleiten auf die Anwendungsseite ist:
function myfunction(title)
{
window.location.assign("http://bipc11:1234/sites/webparts/_layouts/AddValueToCartList/AddValueToCartList.aspx?title="+title);
}
Wenn die Seite auf die Anwendungsseite umgeleitet wird, erhalte ich den oben genannten Fehler.
Was verpasse ich?Bitte helfen Sie.
Lösung
Ich kann den genauen Grund für den Fehler nicht finden:Bitte gehen Sie jedoch die folgenden Punkte durch:
1) So aktualisieren Sie ein schreibgeschütztes Feld.
Setzen Sie zuerst schreibgeschützt auf false und aktualisieren Sie das Feld und setzen Sie es dann als zurück:
Field.ReadOnlyField = false;
Field.Update();
2) Aktualisieren des Suchfelds:
new SPFieldLookupValue(1, "ASP.Net");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange