使用Umbraco MVC显示SQL表

使用Umbraco MVC显示SQL表,sql,asp.net-mvc,model-view-controller,database-connection,umbraco,Sql,Asp.net Mvc,Model View Controller,Database Connection,Umbraco,我今天需要送点东西,我真的被卡住了 我的目标是在Umbraco MVC中显示表中的数据(我是新手) 我需要创建控制器吗? 因为我所做的就是用模板在Umbraco中创建一个文档类型 这就是我的模型中的内容: public class RechargeModel { public string Name { get; set; } public string Username { get; set; } public string Email { get; set; } }

我今天需要送点东西,我真的被卡住了

我的目标是在Umbraco MVC中显示表中的数据(我是新手)

我需要创建控制器吗? 因为我所做的就是用模板在Umbraco中创建一个文档类型

这就是我的模型中的内容:

public class RechargeModel
{
    public string Name { get; set; }
    public string Username { get; set; }
    public string Email { get; set; }
}
这在我的模板上:

@using Repower.Cms.Umbraco.Models;
@using Umbraco.Core.Persistence;
@{
using (var ipDb = new Database("UmbracoCMS"))
   {
      RechargeModel recharge;

      recharge = ipDb.Fetch<RechargeModel>(new Sql().Select("TOP 100").From("umbracoUsers"));
   }
}
@使用Repower.Cms.Umbraco.Models;
@使用Umbraco.Core.Persistence;
@{
使用(var ipDb=新数据库(“UmbracoCMS”))
{
充电模式充电;
recharge=ipDb.Fetch(新建Sql()。从(“umbracoUsers”)中选择(“前100”);
}
}
我得到一个错误,说他不能转换类型列表到模型

这是我的HTML,我想放在我的页面上,但我不知道是否需要将其放在模板中,或者放在哪里:

@model IEnumerable<Repower.Cms.Umbraco.Models.RechargeModel>

<table class="table table-hover">
    <thead>
        <tr>
            <td>User Name</td>
            <td>User Login</td>
            <td>User Email</td>
        </tr>
    </thead>
    <tbody>
        @{
            foreach (var item in Model)
            {
                <tr>
                    <td>@item.Name</td>
                    <td>@item.Username</td>
                    <td>@item.Email</td>
                </tr>
            }
        }
    </tbody>
</table>
@model IEnumerable
用户名
用户登录
用户电子邮件
@{
foreach(模型中的var项目)
{
@项目名称
@item.Username
@邮件
}
}
有人能帮忙吗?另外,代码的其余部分呢


提前谢谢

您可以使用
ApplicationContext.current.DatabaseContext.database
访问当前数据库,而不是新建
数据库
对象

问题是,
.Fetch()
返回一个RechareModel的列表(数组),当您试图将此列表分配给单个RechareModel时

或使用:

var database = ApplicationContext.Current.DatabaseContext.Database;

var recharges = database.Fetch<RechargeModel>(new Sql().Select("TOP 100").From("umbracoUsers"));
var-database=ApplicationContext.Current.DatabaseContext.database;
var recharges=database.Fetch(new Sql().Select(“TOP 100”)。From(“umbracoUsers”);
或者更改变量,使其接受列表:

var database = ApplicationContext.Current.DatabaseContext.Database;

List<RechargeModel> recharges = null;

recharges = database.Fetch<RechargeModel>(new Sql().Select("TOP 100").From("umbracoUsers"));
var-database=ApplicationContext.Current.DatabaseContext.database;
列表充值=空;
recharges=database.Fetch(new Sql().Select(“TOP 100”)。From(“umbracoUsers”);
无论哪种方式,您都可以在视图中迭代此列表:

@foreach (var recharge in recharges )
{
    <tr>
        <td>@recharge.Name</td>
        <td>@recharge.Username</td>
        <td>@recharge.Email</td>
    </tr>
}
@foreach(充电中的var充电)
{
@充电。姓名
@充值。用户名
@充电。电子邮件
}

您可以发布您的型号代码吗?RechargeModel.cs想知道它包含哪些字段。