在视图中显示SQL查询结果

时间:2015-07-24 01:51:38

标签: asp.net asp.net-mvc visual-studio-2015

我是MVC 5的新手.net

基本上我只是试图找到我的方向并且我想显示一些通用查询(忽略我使用主数据库的事实,我只想让功能正常工作)。我使用的是带有applicatindbcontext的身份验证2.0,但是我创建了自己的上下文,但由于我不是真的想创建一个模型(这可能是问题),我不知道该怎么做为属性创建:

public class MasterModel : DbContext
{
    public MasterModel() : base("MasterDatabaseConnection")
    { }
}

我创建了控制器,如:

public class MasterController : Controller
{
    private MasterModel db = new MasterModel();
    // GET: Statistics
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult GetVersion()
    {
        string query = "SELECT @@VERSION AS Version";
        IEnumerable<MasterModel> data = db.Database.SqlQuery<MasterModel>(query);

        return View(data.ToList());
    }
}

最后我试图弄清楚如何在视图中显示结果......我完全迷失了(尽管我可能在之前的一个步骤中丢失了) )。

@model IEnumerable<IdentitySample.Models.MasterModel>

@{
    ViewBag.Title = "Index";
}

@WTF.Am.I.SupposedToPutHere

我已经按照一些教程开始创建CRUD风格的模型视图控制器,但我想我还没有就如何提交信息查询和显示结果进行连接。

1 个答案:

答案 0 :(得分:1)

创建一个上下文:

var companyString="";
if(utils.htmlEncode(item.companyname) != null)
{
   companyString = utils.htmlEncode(item.companyname);
}

创建模型:

public class MasterModel : DbContext
{
    public MasterModel() : base("MasterDatabaseConnection")
    { }
    public DbSet<MyModel> ModelOBJ { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
      modelBuilder.Entity<ModelOBJ>().ToTable("tblModelOBJ");
    }
}

在您的控制器中:

Public cLass MyModel
{ 
    public int ID {get;set;}
    public string Name {get;set;}
}

Public cLass MyModelRepository
{ 

   public List<MyModel> GetALlModelFromDB()
   {
     MasterModel md = new MasterModel();
     return md.ModelTosend.toList(); 
   }
}

在您的视图中:

 public ActionResult Index()
    {
        return View(new MyModelRepository().GetALlModelFromDB());
    }