【问题标题】:Webmatrix/Razor SQL query - Websecurity variableWebmatrix/Razor SQL 查询 - Websecurity 变量
【发布时间】:2013-03-01 15:19:31
【问题描述】:

我正在尝试编写一个查询来显示当前登录用户拥有的所有记录,但我在将“userid”变量插入字符串时遇到问题?

@{
Layout = "~/_template1.cshtml";
var db = Database.Open("StayInFlorida");


var userid = WebSecurity.CurrentUserId;
var premierproperty = "SELECT PropertyName, PropertyID FROM PropertyInfo WHERE OwnerID='userid'";
}

<h1>Properties - Page coming soon</h1>

@userid

@foreach (var row in db.Query(premierproperty)){
@row.propertyname
} 

有什么想法吗?

【问题讨论】:

    标签: razor webmatrix webmatrix-2 razor-declarative-helpers


    【解决方案1】:

    试试这样:

    @{
        Layout = "~/_template1.cshtml";
        var db = Database.Open("StayInFlorida");
        var userid = WebSecurity.CurrentUserId;
        var premierproperty = "SELECT PropertyName, PropertyID FROM PropertyInfo WHERE OwnerID = @0";
    }
    
    <h1>Properties - Page coming soon</h1>
    
    @userid
    
    @foreach (var row in db.Query(premierproperty, userid))
    {
        @row.propertyname
    } 
    

    【讨论】:

    • 只是为了确认,如果我想在页面上运行另一个查询,我可以使用@1 值来做同样的事情吗?它们的顺序有区别吗?
    • 您可以在单个查询中使用任意数量的参数。它们应该编号为@0、@1、@2、...,并且以相同的顺序传递给Query 方法的值。
    猜你喜欢
    • 1970-01-01
    • 2011-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    • 2012-03-17
    • 1970-01-01
    相关资源
    最近更新 更多