AutoCompleteExtender を使用してテキスト ボックスを追加しようとしている動的データ Web サイトがあります。私はそのようにコントロールを宣言しました
<asp:TextBox ID="tbTerm" runat="server" Width="300px"/>
<asp:AutoCompleteExtender runat="server"
id="autoCompleteExtenderTerms"
TargetControlID="tbTerm"
ServiceMethod="GetCompletionList"
UseContextKey="True">
</asp:AutoCompleteExtender>
そして、そのページのコードビハインドで、次のようにWebメソッドを宣言しました
[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public static List<string> GetCompletionList(string prefixText, int count)
{
using (ProductDataEntities context = new ProductDataEntities())
{
var terms = (from t in context.Terms
where t.Name.StartsWith(prefixText, StringComparison.CurrentCultureIgnoreCase)
select t.Name).ToList();
return terms;
}
}
現在、このメソッドは呼び出されていません。これはフォージエン キー列ではないため、標準フィルターを使用することはできません。
EnablePageMethods="true" が ScriptManager に設定されていることを確認しましたが、このメソッドがページから起動されない理由については考えていません。コントロールは更新パネル内にラップされていません。 .