2016-08-22 5 views
0

私はオートコンプリート(asp.netコア)を作成しようとしている剣道オートコンプリートasp.net未定義値

カミソリビュー:

@(Html.Kendo().AutoComplete() 
      .Name("users") 
      .Filter("startswith") 
      .Placeholder("Type user name...") 
      .DataTextField("Email") 
      .Events(e => 
      { 
       e.Select("onSelect"); 
      }) 
      .DataSource(source => 
      { 
       source.Read(read => 
       { 
        read.Action("GetUsers", "User").Data("onAdditionalData"); 
       }) 
       .ServerFiltering(true); 
      }) 
      .HtmlAttributes(new { style = "width:30%" }) 
      .MinLength(2) 
      .Suggest(true) 
      .Height(400) 
     .Template("<span class=\"k-state-default\">\\#=users.Email\\#</span>")) 

サーバー側:私の中

 [HttpGet] 
     public dynamic GetUsers(string term) 
     { 
      return ctx.Users.Where(x => x.Email.ToUpper().Contains(term.ToUpper())) 
.Select(res => new { id = res.Id.ToString(), name = res.Email }).ToList();    
     } 

私は常に正しい数の価値を得ていますが、常に「未定義」です。どこが間違っているの?

+0

ajaxリクエストのデータの例を追加してください。あなたはネットワークタブの開発ツール(F12)でそれを見ることができます。 – DontVoteMeDown

+0

あなたはオートコンプリート '.DataTextField(" Email ")で述べたアクション 'GetUsers'から 'Email'エンティティを返していますか?または '.DataTextField(" name ")' – Vijai

答えて

1

サーバーサイドアクションでは、「名前」に「電子メール」の名前を変更しています。だから使用する必要があります

.DataTextField("name") 
関連する問題