AJAX CT オートコンプリートが機能しません。問題は、テキストボックスに書き始めても何も起こらないことです。私が経験した最初の問題は、オートコンプリート ページ メソッドを追加しようとしたときに、「ページ メソッド "GetCompletionList" を作成できません...」というエラーが発生したことでした。その後、手動で作成しようとしましたが、それでも何も起こりません。
AdministracijaOsoba.aspx コードは次のとおりです。
<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>
AdministracijaOsoba.aspx.cs コードは次のとおりです。
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;
}
LINQ to Entities を使用していることに注意してください。これに関する助けをいただければ幸いです。
よろしく!