AJAX Control Toolkit AutoVervollständigen-Extender funktioniert nicht

Kann ich nicht bekommen, AJAX CT AutoVervollständigen arbeiten. Das problem ist, wenn ich mit dem schreiben beginnen in das Textfeld passiert nichts. Das erste problem, das ich erlebt hatte war, wenn ich versuchte, Fügen Sie AutoComplete Seite Methode, die ich bekam eine Fehlermeldung: "Cannot create page-Methode "GetCompletionList"...". Dann habe ich versucht, erstellen Sie es manuell, aber trotzdem passiert nichts.

Hier ist die AdministracijaOsoba.aspx-code:

<asp:TextBox ID="txtOsoba" runat="server"></asp:TextBox><asp:AutoCompleteExtender
                    ID="AutoCompleteExtender1" runat="server" ScriptPath="" 
                    ServiceMethod="GetCompletionList" ServicePath="AdministracijaOsoba.aspx.cs" 
                    TargetControlID="txtOsoba" UseContextKey="True">
                </asp:AutoCompleteExtender>

Hier ist die AdministracijaOsoba.aspx.cs-code:

public static string[] GetCompletionList(string prefixText, int count, string contextKey)
    {
        PravosudnaAkademijaEntities db = new PravosudnaAkademijaEntities();

        var osoba = from o in db.osobas
                    orderby o.osoba_prezime
                    select new { o.osoba_id, person = o.osoba_prezime + " " + o.osoba_ime };

        string[] main = new string[0];

        foreach (var o in osoba)
        {
            if (o.person.StartsWith(prefixText))
            {
                Array.Resize(ref main, main.Length + 1);
                main[main.Length - 1] = o.person.ToString();

                if (main.Length == 15)
                {
                    break;
                }
            }
        }

        Array.Sort(main);
        return main;
    }

Nehmen Sie eine Notiz, dass ich mit LINQ to Entities. Jede Hilfe auf diesem würde geschätzt.

Grüße!

Nur eine höfliche code Verbesserungsvorschläge...ich denke, ich würde deklarieren Sie eine Liste<string>, und dann myList.Fügen Sie in die Schleife. Am Ende können Sie wieder myList.ToArray. Dies vermeidet die array-Größe Streit.

InformationsquelleAutor wegelagerer | 2011-03-06

Schreibe einen Kommentar