SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




auf listen zugreifen

Unbeantwortet Dieser Beitrag hat 6 Antworten

Ohne Rang
519 Beiträge
donSharepoint erstellt 19 Sept. 2013 15:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

hallo.

ich hab folgendes probem ! ich hab ein webpart über visual studion entwicklelt das auch wunderbar funzt. jetzt will ich das ganze etwas modifizieren. die listen auf die ich bisher zugegriffen haben sind jetzt umgezogen und jetzt weiß ich nicht mehr wie ich drauf zugreifen kann über .net.

bisher lag die list auf der gleichen seite und ich hab immer über den befehl :

SPList list = web.Lists["Alert Members"];

drauf zugegriffen.

Jetzt liegt die Liste woanders auf eine andere seite ! Wie kann ich jetzt drauf zugreiffen?

danke für eure hilfe

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 19 Sept. 2013 16:26
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Genau so. Es geht immer über SPWeb.Lists und die Frage ist nur, woher Du die Variable web hast ;-)

Ich nehme mal an, Du hast es bisher über SPContext.Current.Web gelöst, was Dir immer das aktuelle Web liefert. Solange es nur um eine Websitesammlung (SPSite) geht, kannst Du an eine andere Website so heran:
SPContext.Current.Site.OpenWeb(...)

Wenn es auch noch um eine andere Websitesammlung geht, mußt Du Dir diese erst holen:
using (SPSite site = new SPSite(URL)) {
  using (SPWeb web = site.OpenWeb()) {
    // hier kannst Du jetzt auf alles zugreifen
  }
}

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
519 Beiträge
donSharepoint Als Antwort am 24 Sept. 2013 09:59
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

hi andi .

folgendes problem...dein vorschlag funzt nicht ganz bzw. ich mache etwas falsch.

bekomme ne meldung : invalid expression term '{'  bei der using klammer. nur wieso?

mein code :

 

public void onClick(object sender, System.EventArgs e)
        {


            using (SPSite site = new SPSite(http://segplaza/biz/legal/insight))    <---  hier hole ich mir die websammlung  
            {

                    using (SPWeb web = site.OpenWeb()) 
                    {
                         SPList list = web.Lists["Alert Members"];   <-----hier möchte ich auf die liste innherhalb der websammlung zugreifen
                        SPListItemCollection items = list.Items;
                        string an = string.Empty;

                        foreach (SPListItem item in items)
                        {

                             an = (string.IsNullOrEmpty(an)) ? item["Notify Address"].ToString() : an + "; " + item["Notify Address"].ToString();


                     }

                       StringDictionary headers = new StringDictionary();
                       headers.Add("from", SharepointAdmin@xxx.de);
                       headers.Add("to", an);
                       headers.Add("subject", "Subject" );
                       string bodyText = "Body Text";
                       bool sucess = SPUtility.SendEmail(web, headers, bodyText);
       
       
                    }
            }

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 24 Sept. 2013 10:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Und wo genau gibt es den Fehler? Bei new SPSite() fehlen die Anführungszeichen um die Url, aber ich nehme an, daß das Forum hier die gefressen hat.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
519 Beiträge
donSharepoint Als Antwort am 24 Sept. 2013 10:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

komischerweise bekomme ich so keine fehler mehr !

 hab nur den URL string ausgelagert :) komisch

public void onClick(object sender, System.EventArgs e)
        {

            string strURL = "http://segplaza/biz/legal/insight";

            using (SPSite site = new SPSite(strURL))
            {

                    using (SPWeb web = site.OpenWeb())
                    {

                    //SPWeb web = SPContext.Current.Web;
                    SPList list = web.Lists["Alert Members"];
                    SPListItemCollection items = list.Items;
                    string an = string.Empty;

                    foreach (SPListItem item in items)
                    {

                        an = (string.IsNullOrEmpty(an)) ? item["Notify Address"].ToString() : an + "; " + item["Notify Address"].ToString();


                    }

                    StringDictionary headers = new StringDictionary();
                    headers.Add("from", "SharepointAdmin@xxx.de");
                    headers.Add("to", an);
                    headers.Add("subject", "Subject" );
                    string bodyText = "Body Text";
                    bool sucess = SPUtility.SendEmail(web, headers, bodyText);
       
       
                    }
            }
          
        }

Ohne Rang
519 Beiträge
donSharepoint Als Antwort am 24 Sept. 2013 11:48
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

hi andi.

Es klappt noch nicht 100 % :( ich bekomme von sharepoint eine "file not found error" meldung. was bedeutet das?

ich versuche dem code von : http://infoplazatest/recep/default.aspx auf die Listen von : http://segplaza/biz/legal/insight zuzugreifen.

ist die URL ein problem? oder fehlen rechte?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 24 Sept. 2013 11:52
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Die FileNotFoundException wirft der Konstruktor von SPSite wenn entweder die URL falsch ist oder der Benutzer keine Rechte auf die Site hat.

Viele Grüße
Andi
af @ evocom de
Blog