私はMVCを初めて使用し、モデルのクラス内の顧客データを読み取り、コントローラーを使用してビューに返す単純なMVC 3アプリケーションを作成しようとしています。リーダーは行があることを示していますが、テーブルにロードしてモデルとしてビューに渡すと、null になります。DataTable
aをビューに渡すか、にDataReader
変換できる場所をビューに渡す簡単なソリューションが必要DataTable
です。
コードは次のとおりです。
namespace MvcApplication3.Models
{
public class Customer
{
public DataTable GetCustomers(OdbcDataReader rds)
{
String ConString = "DSN=Northwind;Uid=;Pwd=;";
String SQL = "SELECT * FROM CUSTOMERS";
DataTable tbl = new DataTable();
using (OdbcConnection con = new OdbcConnection(ConString))
{
con.Open();
OdbcCommand cmd = new OdbcCommand(SQL, con);
rds = cmd.ExecuteReader();
}
}
}
}
namespace MvcApplication3.Controllers
{
public class DefaultController : Controller
{
//
// GET: /Default1/
public ActionResult Index()
{
Customer cs = new Customer();
OdbcDataReader rd = new OdbcDataReader();
cs.GetCustomers(rd);
DataTable tb = new DataTable();
tb.Load(rd);
return View(tb);
}
}
}