Laden...
T
Benutzerbeschreibung

Forenbeiträge von tonikln Ingesamt 137 Beiträge

28.01.2011 - 12:18 Uhr

Hi,

ja ich möchte den Headertemplate haben, da ich alle Daten von der Spalte in die DDL haben möchte, um dann Filtern zu können.

mich würde aber interessieren, warum ein FindControl() notwendig ist?
Kannst du dazu was sagen?

28.01.2011 - 10:39 Uhr

Hallo zusammen,
ich habe eine DropDownList die gefüllt wird und auch funktioniert.
Nun möchte ich ich diese DDL in als Template in meiner GridView einbinden.
Das Steuerelement wird angezeigt aber leider nicht gefüllt, obwohl ich an dem Namen nichts geändert habe.

Wenn ich die DDL außerhalb der GridView habe, dann funktioniert alles einwandfrei, aber sobal ich diese änderung vornehme funktioniert es leider nicht mehr:

<asp:BoundField DataField="Title" SortExpression="Title" HeaderText="BuchTitle" />
            <asp:TemplateField>
                <HeaderTemplate>
                    <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"/>
                </HeaderTemplate>
            </asp:TemplateField>

Weiß jemand woran das liegen kann?

MfG

25.01.2011 - 12:24 Uhr

oh mist
und ich habe die ganze Zeit mit tbx.ToString(), etc. versucht kotz

und wie siehts denn aus, wenn man alles was mit z.B. "K" angezeigt haben möchte ?

MfG

25.01.2011 - 12:12 Uhr

Hi,
ich versuche gerade nach Volltext zu suchen. habe bereits meine Daten aus dem Webservice in einer DataView gespeichert. Textbox und Button event ist ebenfalls erstellt.

Ich versuche gerade die Methode FindRows zu nutzen leider ohne Erfolg 😦
Momentan sieht mein Code wie folgt aus:


void btnSearch_Click(object sender, EventArgs e)
        {
            ds1 = (DataSet)Session["DataSet"];
            DataView dv = ds1.Tables[1].DefaultView;
            
            //string select = string.Format("ows_Title LIKE '{0}%'", tbxSearch);

            dv.Sort = "Column";
            DataRowView[] rows = dv.FindRows(tbxSearch);
            
            GridView1.DataSource = rows;
            GridView1.DataBind();
            
        }

Meine frage ist, bin ich mit der Methode FindRows eigentlich richtig ?
Kann mir auch jemand sagen, wieso das nicht ganz funktioniert ?

MfG

25.01.2011 - 11:19 Uhr

Hi,
klappt alles.
An der Stelle hab ich aber noch eine Frage...
Wenn ich mehrere ddls habe muss ich dann meine Liste wieder Löschen und dann die neuen Elemente hinzufügen, oder kann ich alles in einer Liste packen ??

im mom sieht es nämlich so aus:


foreach (DataRowView dr in dv)
            {
                if (!tempList.Contains(dr[0].ToString()))
                {
                    tempList.Add(dr[0].ToString());
                }
            }
            tempList.Sort();
            DropDownList1.DataSource = tempList;
            DropDownList1.DataBind();


            //2. DropdownList
            tempList.Clear();
            
            foreach (DataRowView dr in dv)
            {
                if (!tempList.Contains(dr[2].ToString()))
                {
                    tempList.Add(dr[2].ToString());
                }
            }
            tempList.Sort();
            DropDownList2.DataSource = tempList;
            DropDownList2.DataBind();

24.01.2011 - 13:33 Uhr

Hallo,
vielen Dank für den Tipp...

Leider bin ich nicht so sehr vertraut mit den Listen 😦...
Könnte mir jemand sagen, wie ich die Datensätze von meiner DataView in eine List<> hineinbekomme ??

Das würde mir echt sehr weiterhelfen...

21.01.2011 - 14:07 Uhr

Hallo zusammen,
wie im Thread schon steht, möchte ich meine Daten in der DropDownList gerne sortieren.
Leider weiß ich da keine Lösung. Kann mir einer von euch ein Tipp geben ?

Mein DDL fülle ich wie folgt:

foreach (DataRowView dr in dv)
            {
                
                if (ddl.Items.FindByValue(dr[2].ToString()) == null)
                {
                    ddl.Items.Add(dr[2].ToString());
                }
             }

21.01.2011 - 14:00 Uhr

Linq könnte ich benutzen, aber dafür müsste ich vieles neu schreiben und das wäre zu viel arbeit.

Im mom läuft alles wunderbar, d.h. es läuft alles einwandfrei mir DataSet etc.

21.01.2011 - 11:41 Uhr

Hallo,

das % ist ja ein Platzhalter, also müsstest Du beim Statusfeld auch mit LIKE Abfragen oder das % wieder rausnehmen.

Das ist mir auch gerade, wo ich auf toilette war, eingefallen 😃

@inflames2k: und dir auch vielen Dank für das letzte Beispiel 😉
aufs klo hatte ich ebenfalls eine ähnliche idee 😃

Danke nochmal 😉

21.01.2011 - 11:22 Uhr

Wie sieht myList_.befehl aus? Sehe ich das richtig, dass darin sowas wie "Eintrag =" steht? Dann wäre der folgeschluss dass du anschließend "Eintrag = Like Wert%" drin stehen hast und das wäre von vornherein völlig verkehrt.

Das habe ich bereits geändert, sodas "Eintrag LIKE" steht 😃

21.01.2011 - 11:21 Uhr
[TblAbteilung] LIKE 'HR%'

Wenn ich nur ein Filter betätige, dann funktioniert das.

Sobald ich aber einen zweiten auswähle, dann nicht mehr...
Es sieht dann wie folgt aus:

[TblAbteilung] LIKE 'HR%' and[status] = 'erfolgreich%' 
21.01.2011 - 11:02 Uhr

Ok das es egal ist, wo die Daten her kommen, habe ich verstanden, aber wo das LIKE mit dem % eingesetzt wird leider nicht.

ich habe es an der Stelle gemacht:


for (int i = 0; i < myList.Count;i++ )
            {
                if (myList[i].value != string.Empty)
                {
                    //Hier müste/Sollte meiner Meinung nach LIKE stehen
                    temp += myList[i].befehl + "'" + "LIKE " + myList[i].value + "%'";
                    if (i != lastIndex)
                    {
                        temp += "and";
                    }
                }
            }

Wenn ich das aber so lasse, dann bekomme ich garkeine Daten angezeigt, da er nach z.B. HR% sucht. Das Prozentzeichen wird dort nicht als "platzhalter" gesehen 😦

21.01.2011 - 10:33 Uhr

Da hab ich vergessen etwas zu erwähnen.
Die Daten kommen aus einem Webservice und nicht von einer SQL DB.

Ich glaube, dass wenn die Daten vom Webservice kommen, dass es da keinen LIKE gibt oder täusch ich mich ?

21.01.2011 - 09:30 Uhr

Hallo zusammen,

in meiner Webanwendung befinden sich DropDownLists und eine GridView die mit Daten befüllt ist.
Ich habe mir eine Methode geschrieben, die meinen Filter "Statement" zusammenbaut, je nach dem welche Filter benötigt werden.
Wenn ich ein Filter betätige funktioniert das alles wunderbar.

Was habe ich also jetzt vor ?
Z.B. wenn ich eine Abteilung "HR" habe, möchte ich das auch alle Darunterstehende Abteilungen ebenfalls in meiner GridView angezeigt werden, d.h. "HR-EN", "HR-BN", etc.

Wie kann ich dies Realisieren bzw. hat da jemand eine Idee ?


 void Filter()
        {
            myDv = ds1.Tables[1].DefaultView;
            myDv.RowFilter=string.Empty;
            string temp = string.Empty;
            int lastIndex = 0;
            for (int j = 0; j < myList.Count; j++) 
            {
                if (myList[j].value != string.Empty) 
                { 
                    lastIndex = j; 
                } 
            }
            
            for (int i = 0; i < myList.Count;i++ )
            {
                if (myList[i].value != string.Empty)
                {
                    temp += myList[i].befehl + "'" + myList[i].value + "'";
                    if (i != lastIndex)
                    {
                        temp += "and";
                    }
                }
            }

            myDv.RowFilter = temp;
            GridView1.DataSource = myDv;
            GridView1.DataBind();
        }

18.01.2011 - 13:47 Uhr

ich bin durch diese seite darauf gekommen:

http://www.eggheadcafe.com/community/aspnet/2/10174904/export-datagridview-in-pdf.aspx

Dort haben die ja das pdf dokument so wie ich es gepostet habe erstellt.

Kann keiner was dazu sagen ?:(

18.01.2011 - 11:50 Uhr

Hallo zusammen,
ich versuche gerade meine Daten in einem GridView zu exportieren (PDF).
Es scheint so als momentan alles laufen würde. Nur wenn ich meine Datei öffne, dann folgende Fehlermeldung:

"Adobe Reader konnte "File.pdf" nicht öffnen, da der Dateityp nicht unterstützt wird oder die Datei beschädigt ist (z.B. wenn sie als E-Mail-Anhang geschickt und nicht korrekt dekodiert wurde)."

Leider kann ich damit wenig anfangen 😦.

Hier könnt ihr sehen, wie das implementiert habe:

DataGrid dta = new DataGrid();
            dta.DataSource = ds1.Tables[0];
            dta.DataBind();

            Response.Buffer = true;
            Response.ClearContent();
            Response.ClearHeaders();

            Response.ContentType = "application/pdf";
            Response.AddHeader("content-disposition", "attachment;filename=FileName.pdf");

            StringWriter sw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);


            dta.RenderControl(hw);

            Response.Write(sw.ToString());
            Response.Flush();
            Response.Close();
            Response.End();
17.01.2011 - 14:38 Uhr

Hallo zusammen,
ich versuche die ganze zeit meine gefilterten Daten, die sich in einer dataview befinden, in einem Dataset zu überführen.

dsExp = myDv.Table.DataSet.Copy();

Wenn ich die Zeile so nehme, dann nimmt mein DataSet alle Daten die durch den webservice kommen, was ich aber nicht möchte.

Kann mir einer an der stelle ein Tipp geben ?

17.01.2011 - 10:03 Uhr

Hi,

export habe ich jetzt hin bekommen, nur leider ist es nicht ganz so wie ich es haben möchte 😦
Im Browser bekomme ich nur ein paar Spalten angezeigt, was auch so sein soll. Beim Export werden leider auch Spalten exportiert, die ich garnicht haben möchte.

mein Export sieht wie folgt aus:

  void btnExport_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();

            myDv = (DataView)Session["DataView"];
           
            dt = CreateTable(myDv);

            string attachment = "attachment; filename=test.xls";
            Response.ClearContent();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "application/vnd.ms-excel";

            string tab = "";
            foreach (DataColumn dc in dt.Columns )
            {
                Response.Write(tab + dc.ColumnName);
                tab = "\t";
            }
            Response.Write("\n");
            int i;
            foreach (DataRow dr in dt.Rows)
            {
                tab = "";
                for (i = 0; i < dt.Columns.Count; i++)
                {

                    Response.Write(tab + dr[i].ToString());
                    tab = "\t";
                }
                Response.Write("\n");
            }

            Response.End();            
        }

Kann mir jemand sagen, wie ich meine vorhandene Methode so umschreiben kann, damit ich meine Spalten festlegen kann ?

Vielen Dank im Voraus!

14.01.2011 - 14:15 Uhr

Hi,
hast du da auch zufällig ein beispiel parat ?
ich such mich den halben Tag dumm und dämlich 😦

14.01.2011 - 13:24 Uhr

Hallo zusammen,
ich habe da mal eine Frage.
Kann mir jemand sagen wie ich meine Daten, die aus dem Webservice kommen, am besten exportieren kann (XML).
Meine Daten werden nämlich als erstes in eine GridView angezeigt. Auf der Seite habe ich als erstes ein Button erstellt, der die Funtkion des Exports übernehmen soll.

06.01.2011 - 15:26 Uhr

ich habe es jetzt wie folgt gemacht


<asp:DropDownList ID="ddltest" runat="server" AutoPostBack="True">
            <asp:ListItem Value="">-- Auswahl treffen --</asp:ListItem>
  </asp:DropDownList>

Jetzt ist es fast so wie ich es haben möchte 😃.
Ich weiß jetzt nur nicht wie ich meiner Anwendung sage, dass wenn es auf Auswahl treffen ist, dass alle Daten der DDL berücksichtigt werden soll ?!

Kann mir da einer helfen ?

06.01.2011 - 10:26 Uhr

Kann ich nicht im Codebehind den ersten Wert bestimmen ?
Wenn ja wie?

ich fülle meine ddl nämlich so:

foreach (DataRowView dr in dv)
            {
               
                if(ddl.Items.FindByValue(dr[2].ToString()) == null)
                {
                    ddl.Items.Add(dr[2].ToString());
                }
}

Es ist nämlich eine Sharepoint liste die ich aus dem Webservice bezihe und möchte da ungern die ersten Werte ändern 😦

06.01.2011 - 09:56 Uhr

Hi,

also um meine dropdownliste zu füllen nutze ich die daten aus meiner GridView.
und mit anfangswert meine ich, dass es das erste elemnt von meiner gridview nimmt, also keine Variable 😉
Mit einem ausgewähltem Wert meine ich folgendes:

Ich möchte aber, dass die ddl beim starten leer ist und nicht den anfangswert "blue" hat 😃

06.01.2011 - 09:28 Uhr

Guten morgen zusammen und ein glückliches frohes neues jahr 😉

ich habe eine ASP.NET anwednung wo daten aus dem Webservice gezogen werden. dazu habe ich einige DDL zum filter erstellt. die ddl haben bei jedem Start meiner anwendung einen Wert bzw. da ist schon das 1. Wert ausgewählt.

Kann mir einer sagen wie ich die ohne Anfansgwert implementiere ?

Danke im Voraus.

17.12.2010 - 15:01 Uhr

Danke für eure Hilfe 😉

Ich hoffe das passt nun hierzu, aber kann mir jemand sagen wie ich die beiden Filter kombinieren kann ??

Denn jetzt ist es so, das wenn ich einmal einen Filter benutze bekomme ich die Daten die ich haben will, wenn ich aber dann einen weitern filter benutze, dann löscht sich die Auswahl die ich davor getroffen habe

17.12.2010 - 12:13 Uhr

Ist das ein mist -.-l, das funktioniert mit den eckigen Klammern...

Danke MarsSteint

17.12.2010 - 11:51 Uhr

Hallo zusammen,
wie die Überschrift des Threads schon sagt, habe ich eine Frage zu dieser Fehlermeldung..

Und zwar beziehe ich Daten aus dem WebService und binde die dann in einer GridView ein. Filter klappt auch soweit, aber nur wenn meine Spaltenname kurz bzw. ohne leerzeichen sind z.B.


DataView dv = ds1.Tables[1].DefaultView;
            dv.RowFilter = string.Format("column = '{0}'", ddl.SelectedValue);
            GridView1.DataSource = dv;
            GridView1.DataBind();

Ich habe auch auch eine Spalte mit einem Leerzeichen die so aussieht:


DataView dv = ds1.Tables[1].DefaultView;
          //An dieser Stelle bekomme ich die Fehlermeldung: Syntax error: Missing    operand after 'of' operator. 
            dv.RowFilter = string.Format("column of test = '{0}'", ddl.SelectedValue);
            GridView1.DataSource = dv;
            GridView1.DataBind();

Verstehe aber nicht warum das so ist 😦
Kann mir da jemand helfen ?

14.12.2010 - 14:47 Uhr

Edit: Warum benutzt Du nicht das DataSet aus der Session?

Welchen meinst du ?
ds1 oder myds ?

Mir ist nämlich gerade aufgefallen, dass wenn ich diese Zeile einfüge, werden meine Daten schon im Vorfeld gefilter 😦. Außerdem wenn ich 10 DDL habe, habe ich dann 10 mal fast die selbe Zeile da stehen nur mit einer anderen DDL.

Es muss doch einen schöneren weg geben oder nicht 😃 ??

mfg

14.12.2010 - 12:11 Uhr

Wenn ich mir aber das BindGrid im GridView1_PageIndexChanging spare, bekomm ich auf den nächsten Seiten keine Daten mehr geliefert 😕
Ich wüsste jetzt nicht, wie ich meinen aktuellen Filterkriterium der GridView übergebe ...

14.12.2010 - 11:39 Uhr

BinGrid sieht so aus:

public void BindGrid(string sortExp, string sortDir)
        {
            list.Credentials = new System.Net.NetworkCredential("user", "pw", "domain");

            System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
            string rowLimit = "0";
            
            XmlNode query = xmlDoc.CreateNode(XmlNodeType.Element, "Query", "");
            XmlNode viewFields = xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "");
            XmlNode queryOptions = xmlDoc.CreateNode(XmlNodeType.Element, "QueryOptions", "");

            query.InnerXml = "";

            viewFields.InnerXml = "";

            queryOptions.InnerXml = "";
            


              //Den Inhalt einer "Liste Anzeigen
            list.GetListItemsCompleted += new GetListItemsCompletedEventHandler(list_GetListItemsCompleted);
            
            Guid _guid = Guid.NewGuid();

            list.GetListItemsAsync("Liste", "", query, viewFields, rowLimit, queryOptions, "", _guid);
                          
        }

Von dieser Methode springt der dann in folgenden Event rein:


void list_GetListItemsCompleted(object sender, GetListItemsCompletedEventArgs e)
        {
            //Hier convertiere ich zu einem DataSet
            DataSet myds = ConverttYourXmlNodeToDataSet(e.Result.InnerXml);
             
            string sSort = "";
            string sExpr = "";

            if (Session["sSort"] != null)
            {
                 sSort = Session["sSort"].ToString();
                 sExpr = Session["sExpr"].ToString();
            }
            DataView dv = myds.Tables[1].DefaultView;
           
            ViewState["DataTable"] = myds.Tables[1];
            

            foreach (DataRowView dr in dv)
            {
                ddl.Items.Add(dr[0].ToString()); //ok
            }

            if (sSort != "" && sExpr != "")
            {
                dv.Sort = string.Format("{0}{1}", sExpr, " " + sSort);           
            }

            
            Session["DataSet"] = ds1;
           
            GridView1.DataSource = dv;
            GridView1.DataBind();
           
        }

14.12.2010 - 11:22 Uhr

Hi,
ich habe das wie folgt gemacht:

        

//Page_Load
            if (!IsPostBack)
            {
                //Mit dieser Methode hole ich mir die Daten aus dem Webservice
                BindGrid("", "");
                ViewState["SortOrder"] = "";

                GridView1.DataSource = dt;
                GridView1.DataBind();
            }
            else
            {
                ds1 = (DataSet)Session["DataSet"];

            }

void ddl_SelectedIndexChanged(object sender, EventArgs e)
        {
            DataView dv = ds1.Tables[1].DefaultView;
            dv.RowFilter = string.Format("spalte = '{0}'", ddl.SelectedValue);
            GridView1.DataSource = dv;
            GridView1.DataBind();
        }

void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            BindGrid("", "");
            GridView1.PageIndex = e.NewPageIndex;
            GridView1.DataBind();
        }

        void GridView1_PageIndexChanged(object sender, EventArgs e)
        {
            
            GridView1.DataBind();
        }

Ich hoffe hiermit habe ich euch einen groben überblick erschaffen!

14.12.2010 - 10:54 Uhr

Hallo zusammen,

ich habe eine ASP.NET Webanwendung wo Daten aus dem Webservice gezogen werden. Soweit funktioniert alles Einwandfrei.
Ich habe eine DropDownList und eine GridView.
Wenn ich in meiner DDL eine Auswahl treffe funktioniert das Filtern.
Wenn ich dann in meiner GridView zur nächsten Seite weiter gehe, hebt sich die Filterung leider auf 😦

Wenn ich nicht Filtere funktioniert das Paging auch Fehlerfrei.

Weiß jemand woran das liegen kann ?

MfG

07.12.2010 - 10:27 Uhr

Hallo zusammen,
ich hab mal eine blöde frage 😃
Ich beziehe Daten aus einem Webservice, die ich mir dann in eine Dataset speichere.

Nun folgendes:
Gibt es beim Dataset sowas wie den DefaultView?
Ich finde nämlich den DefaultView nur bei dem Objekt DataTable.

Ich möchte für meinem DataSet sowas wie den DefaultView erreichen.
Kann mir auch jemand kurz erklären wie ich das mache 😃??

Vielen Dank im Voraus

29.11.2010 - 10:33 Uhr

Hi,
ich versuche gerade diese eigenschaft zu nutzen, nur leider weiß ich den genauen quellcode nicht 😦

hat jemand einen mini beispiel für mich ?

29.11.2010 - 09:04 Uhr

Hallo zusammen,
ich beziehe Daten aus meinem WebService. Das ganze klappt auch.
Ich habe bereits auch eine Dropdownlist hinzugefügt die auch mit den Daten die ich haben will, gefüllt wird.

Wie sage ich denn jetzt meiner GridView das sie mir nur den Datensatz anzeigt, den ich in der Dropdownliste ausgewählt habe ?

Kann mir da jemand helfen ?

MfG

22.11.2010 - 12:06 Uhr

Hallo zusammen,

ich beziehe eine Sharepoint Liste über den webservice.
Das ganze läuft auch ganz gut... Mein Problem ist, dass wenn ich die Liste in meine GridView anzeigen lasse, dann werden meine "interne Spaltennamen" angezeigt.
Hat jemand einen Tipp für mich, wie ich die "normalen" Spaltennamen angezeigt bekomme `?

MfG

16.11.2010 - 10:13 Uhr

Das ist richtig

Sryyyyy

16.11.2010 - 09:05 Uhr

Das hört sich garnicht mal so schlecht an 😉
werde ich allerdings als nächsten Schritt machen...
erst möchte ich Sortierung hinbekommen 😦
Hast du da evtl. eine Idee wie das funktionieren soll?
ich hab schon folgendes gemacht:
Das funktioniert aber nicht 😦

 void GridView1_Sorting(object sender, GridViewSortEventArgs e)
        {
            //list.
            //try
            //{
                DataTable dt = Session["Test"] as DataTable;
                DataView dv = new DataView(dt);

                string sortDirection = "ASC";

                if (e.SortDirection.ToString() == sortDirection) ;
                {
                    sortDirection = "DESC";
                }

                dv.Sort = e.SortExpression + sortDirection;
                GridView1.DataSource = dv.ToTable();

                // GridView1.Sort(e.SortExpression, SortDirection.Descending);

                GridView1.DataBind();
            //}
            //catch (DataException ex)
            //{
            //    Label1.Text = ex.Message;
            //}
        }

        void GridView1_Sorted(object sender, EventArgs e)
        {
            GridView1.DataBind();
        }

Ich bekomm immer eine DataException
DataTable must be set prior to using DataView.

15.11.2010 - 16:19 Uhr

Ok sry.
Mein Code:

 XmlNode query = xmlDoc.CreateNode(XmlNodeType.Element, "Query", "");
            XmlNode viewFields = xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "");
            XmlNode queryOptions = xmlDoc.CreateNode(XmlNodeType.Element, "QueryOptions", "");

            query.InnerXml = "";

            viewFields.InnerXml = "";

            queryOptions.InnerXml = "";

            list.GetListItemsCompleted += new GetListItemsCompletedEventHandler(list_GetListItemsCompleted);
            list.GetListItemsAsync("Test", "", query, viewFields, rowLimit, queryOptions, "");
          
        


void list_GetListItemsCompleted(object sender, GetListItemsCompletedEventArgs e)
        {
            DataSet myds = ConverttYourXmlNodeToDataSet(e.Result.InnerXml);
            GridView1.DataSource = myds.Tables[1].DefaultView;

            GridView1.DataBind();
        }

15.11.2010 - 14:15 Uhr

mich würde interessieren, wie du versuchst den Spaltenname zu ermitteln.

Also eigentlich habe ich keine festen Spaltennamen eingegeben, somit passiert alles automatisch ...

15.11.2010 - 10:34 Uhr

Also dieses Problem habe ich jetzt auch gelöst 😃
Fehler ist / sind die Querys gewesen, um alle Spalten zu erhalten, benötige ich keine Query.

query.InnerXml = ""; //etc

Aber wir sind noch nicht fertig 😦
ich bekomm leider die internen Spaltennamen angezeigt.
Wie kann ich das denn so machen, dass nicht die internen Spaltennamen angezeigt werden, sondern die ich auch in meiner SP-Liste sehen also die "normalen Namen" ?

11.11.2010 - 16:50 Uhr

Ich habe endlich mein Fehler gefunden 🙂

Die Liste die ich brauche, die ist leider nicht über den Webservice den ich hinzugefügt habe, garnicht findbar...

das schlimme ist, dass ich jetzt einen anderen Webservice hinzufügen wollte, aber leider scheitert es hier wieder ...

Ich kann den Webservice in den Browser sehen, aber nicht zu meinem ASP.NET Projekt hinzufügen, obwohl ich volle Berechtigung auf die SP Seite habe.

Weiß jemand woran das liegt ?

Und bevor ich es vergesse 😉
@felix: Vielen Dank für die Mühe und hilfe 😉

11.11.2010 - 11:48 Uhr

Das wäre echt lieb 😉
hast dann auch was gut bei mir 😛 haha

11.11.2010 - 10:59 Uhr

Auf deinem Zitat bin ich auch schonmal gestoßen, habe es auch auf null gesetzt, aber bekomm immer diese verdammten SoapException 😦

Oder kennst du eine anständige Seite, wo es einen beispiel gibt (der auch funktioniert)?

Ich war nämlich schon auf der Microsoft seite (http://msdn.microsoft.com/en-us/library/lists.lists.getlistitems.aspx), habe es für mich angepasst, aber das klappt irgendwie auch nicht 😦

11.11.2010 - 09:56 Uhr

Ok, danke...

Kannst du mir auch sagen, woher ich die WebId bekomme ?
Ich denke nämlich, dass das auch ein fehler sein könnte 😦

11.11.2010 - 08:57 Uhr

Ja, du hast recht ist 2007 und es läuft nicht auf der selben maschine, dafür habe ich einen extra server wo 2007 läuft.

Ich weiß, mit dem Objectmodell ist es wesentlich einfacher, aber ich muss es mit dem Webservice hinbekommen.

Vllt, ist etwas an der Query falsch ??
Die hab ich nämlich schon 1000 mal geändert 😦

09.11.2010 - 13:38 Uhr

Details zur Exception habe ich (try - catch)

Fehler:
System.Web.Services.Protocols.SoapException: Exception of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown. at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at SharePointList.SharepointListe.Lists.GetListItems(String listName, String viewName, XmlNode query, XmlNode viewFields, String rowLimit, XmlNode queryOptions, String webID) in C:\Users\test\Desktop\SharePointList\SharePointList\Web References\SharepointListe\Reference.cs:line 435 at SharePointList._Default.Page_Load(Object sender, EventArgs e) in C:\Users\test\Desktop\SharePointList\SharePointList\Default.aspx.cs:line 99

09.11.2010 - 13:24 Uhr

Keiner eine Idee ??:(

08.11.2010 - 15:15 Uhr

Hallo zusammen,
kommen wir direkt zur Sache 😃
Ich möchte den Inhalt einer Sharepoint Liste in eine ASP.NET Anwendung (in eine GridView) anzeigen lassen. Dies soll über meinem WebService geschehen. Den WebService und die Credentials habe ich bereits, d.h. das läuft.

Nun bekomm ich immer eine SoapException und weiß nicht woran es liegt 😦


list.Url = "xxx/Lists.asmx";
                System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();

                string listName = "{xxx}";
                string viewName = "{xxx}";
                string rowLimit = "150";
                string webId = "0";

                XmlNode query = xmlDoc.CreateNode(XmlNodeType.Element, "Query", "");
                XmlNode viewFields = xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "");
                XmlNode queryOptions = xmlDoc.CreateNode(XmlNodeType.Element, "QueryOptions", ""); 

                query.InnerXml = "<Where><Eq><FieldRef Name=\"Title\" /><Value Type=\"Text\">K</Value></Eq></Where>";
                viewFields.InnerXml = "<FieldRef Name=\"Title\" />";
                queryOptions.InnerXml = "";

                //System.Xml.XmlNode nodeListItems = list.GetListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, null);
            
//Beim Aufruf dieser Methode bekomm ich immer die SoapException :(
                System.Xml.XmlNode nodeListItems = list.GetListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, webId);
                foreach (System.Xml.XmlNode listItem in nodeListItems)
                {
                    //Label1.Text += listItem.OuterXml;
                }
            }
            catch (System.Web.Services.Protocols.SoapException ex)
            {
                Label1.Text = ex.ToString();
            }

Kann mir da jemand helfen 😦 ?

26.10.2010 - 09:32 Uhr

@ meisteralex,

danke für die Hilfe, aber ich hab den Fehler gefunden 😃

zum einen muss ich dieses Mapping als erstes deklarieren.
Dann wird einfach die Falsche Methode aufgerufen und deshalb springt er nicht in das Event rein. Das muss folgendermaßen aussehen:

instance.GetGroupCollectionFromSiteCompleted += new GetGroupCollectionFromSiteCompletedEventHandler(instance_GetGroupCollectionFromSiteCompleted);

            xtest = instance.GetGroupCollectionFromSite();

// Das ist die richtige Methode, davor wurde dies gemacht: instance.GetGroupCollectionAsync(xtest)
            instance.GetGroupCollectionFromSiteAsync(xtest);