2017-11-23 1 views
0
で剣道UIコアエンティティフレームワークのコア未定義

UIがこのkendoMultiSelect

<div class="col-md-3"> 
    <select id="kMultiSelect" data-placeholder="Select Traits..." /> 
</div> 

のように見えるのJavascript

<script> 
    var dataSourceTraits = new kendo.data.DataSource({ 
     transport: { 
      read: { 
       url: "api/Traits", 
       dataType: "json" 
      }, 
      create: { 
       url: "api/Traits", 
       type: "POST", 
       dataType: "json", 

       parameterMap: function (options, operation) { 
        if (operation !== "read" && options.models) { 
         return { models: kendo.stringify(options.models) }; 
        } 
       } 
      }, 
     }, 
     schema: { 
      model: { 
       ID: "Trait", 
       fields: { 
        ID: { type: "number" }, 
        UID: { type: "string" } 
       } 
      } 
     } 
    }); 
    $("#kMultiSelect").kendoMultiSelect({ 
     autoBind: true, 
     dataTextField: "UID", 
     dataValueField: "ID", 
     dataSource: dataSourceTraits 
    }); 
</script> 

モデル

public int ID { get; set; } 
    public virtual string UID { get; set; } 
    ..... 

コントローラが

// GET: api/Traits 
    [HttpGet] 
    public IEnumerable<Trait> GetTrait() 
    { 

     // var test = _context.Trait; 

     return _context.Trait; 
    } 

私は私のテーブル内の4行を持っていると私はそれぞれの行は単なるテキストの「未定義」があるkendoMultiSelectの4行を取得します。ヘルプ

+0

'dataType:" json "'を読んで一度だけ削除してください。 – Sankar

+0

提案のおかげで、残念ながら私は同じ結果(未定義の4行) – EricS

答えて

0

もっと助けた後、エンティティフレームワークのコアは、デフォルトでは、JSONを返すため

Looks like this

感謝。このデータソースは動作します

var dataSourceTraits = new kendo.data.DataSource({ 
     type: "json", 
     transport: { 
      read: { 
       url: "api/Traits" 

      } 
     }, 
     schema: { 
      model: { 
       fields: { 
        id: { type: "number" }, 
        name: { type: "string" } 
       } 
      } 
     } 
    });