2017-07-14 8 views
0

Web APIとエンティティフレームワークについて学ぶプロジェクトを作成しました。私のサービスをデータベースに接続しようとすると、サービスはデータベースからデータを取得しませんでした。以下は私の接続文字列です:Entity Frameworkを使用してデータベースからデータを取得しているときのWebAPIの問題

<add name="CotacaoContext" connectionString="Data Source=Minha_Maquina\Instancia; Initial Catalog=Cotacao; User Id=sa; Password=d123" providerName="System.Data.SqlClient" /> 

これは私のコントローラとGetUsuariosメソッドです。このメソッド(GetUsuarios)は、DB(Table = Usuarios)からすべてのデータを取得します。それぞれのDBSetと

public class UsuarioController : ApiController 
{ 
    private CotacaoContext contexto = new CotacaoContext("CotacaoContext"); 

    [AcceptVerbs("Get")] 
    public IEnumerable<Usuarios> GetUsuarios() 
    { 
     return contexto.Usuario.AsEnumerable(); 
    } 

    public Usuarios GetUsuarioById(int id) 
    { 
     Usuarios usuario = contexto.Usuario.Find(id); 
     if(usuario == null) 
     { 
      throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound)); 
     } 

     return usuario; 
    } 

    protected override void Dispose(bool disposing) 
    { 
     contexto.Dispose(); 
     base.Dispose(disposing); 
    } 
} 

Contextクラス:

public class CotacaoContext : DbContext 
{ 
    public CotacaoContext() 
     : base("name=CotacaoContext") 
    { 

    } 
    public DbSet<Usuarios> Usuario { get; set; } 
    public DbSet<Login> Login { get; set; } 
} 

モデルクラス

public class Usuarios 
{ 
    public int Id { get; set; } 
    public int Tipo_Usuario { get; set; } 
    public string NMUsuario { get; set; } 
    public string Senha { get; set; } 
} 

私はこのライン

return contexto.Usuario.AsEnumerable(); 

をデバッグするとき、私はこの問題を持っている:

enter image description here

私のテーブルには、6つのレコードを持っているし、イメージに6つのレコードはこの形式」で表示されますか?」 それが何を意味するの

+2

を見ています。実際に問題がありますか? – SLaks

+0

私のリストはnullで、私のデータベースには6つのレコードがあるので、郵便配達員またはブラウザでは、私はこれを持っています:[]。 –

+0

@SLaksは言ったように、スタジオ](https://stackoverflow.com/questions/10918981/get-question-mark-instead-property-name-and-value-in-dビジュアルスタジオでのebug-mode)。あなたは6つのレコードを持っていると言っていますか、それともヌルですか、あるいはあなたが期待する価値がありますか? – Kevin

答えて

0

Solved.Iは(唯一のToListメソッドを必要に応じて)次のように:。?

return contexto.Usuario.AsEnumerable().ToList(); 

私は、デバッガのバグのように見えるこの回答here

関連する問題