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.




Probleme mit Link in HyperLink.NaviateUrl auf Dokumentenbilbilothek

Geprüfte Antwort Dieser Beitrag hat 3 Antworten

Ohne Rang
4 Beiträge
KlausR erstellt 6 Okt. 2015 16:02
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich habe einen Visualwebpart. Dort stelle ich in einem Gridview eine DataTable dar.
Die DataTable enthält ein HyperLink Feld. Dieses HyperLink Feld weise ich in OnRowDataBoundGridView zu. Die erforderlichen Werte Text und NavigateUrl hole ich mir aus der Row, diese wurden bereits vorher zugewiesen.

protected void OnRowDataBoundGridView2(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                HyperLink hyperlink = new HyperLink();
                hyperlink.NavigateUrl = System.Web.HttpUtility.HtmlDecode(e.Row.Cells[6].Text);
                hyperlink.Text = e.Row.Cells[0].Text;
                hyperlink.Target = "_blank";               
                e.Row.Cells[0].Controls.Add(hyperlink);
            }
        }

Im Debugger kann ich sehen, dass die übergebene NaviateUrl auf ein Dokument in einer Dokumentenbibliothek stimmt. Im Browser werden jedoch die Umlaute und Leerzeichen mit % codiert.
Der Link funktioniert in Sharpoint so nicht. Der Link mit Umlauten und Leerzeichen funktioniert.
Wie kann ich verhindern, dass der Link so codiert wird oder welchen anderen Lösungsansatz gibt es.

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 7 Okt. 2015 08:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Lasse das HtmlDecode weg. Bzw. wenn überhaupt dann benutze UrlEncode.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
4 Beiträge
KlausR Als Antwort am 7 Okt. 2015 11:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Danke, manchmal sieht man dem Wald vor lauter Bäume nicht mehr.
Das Problem lag an anderer Stelle, die Zuweisung des Wertes zu e.Row.Cells[6].Text war falsch.  Jetzt verwende ich dafür das Feld FieldRef, damit funktioniert der Link entsprechend Codebeispiel auf das Dokument in der Dokumentenbibliothek.

Ohne Rang
4 Beiträge
KlausR Als Antwort am 7 Okt. 2015 11:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Danke, manchmal sieht man dem Wald vor lauter Bäume nicht mehr.
Das Problem lag an anderer Stelle, die Zuweisung des Wertes zu e.Row.Cells[6].Text war falsch.  Jetzt verwende ich dafür das Feld FieldRef, damit funktioniert der Link entsprechend Codebeispiel auf das Dokument in der Dokumentenbibliothek.