2011-02-19 114 views
0

我正在学习使用WebMatrix中的startersite并试图显示表中的某些数据的razor语法。我只想选择登录用户的数据,所以实际上想要说无法从WebMatrix中的Razor使用SQL语句获取当前用户标识

...WHERE UserId [email protected]"; 

但这不起作用。

使用@ 0方法对我不起作用 - 我得到'A参数丢失。 [Parameter ordinal = 1]'错误。

我必须设置一个变量,然后使用@ 0/@ 1/@以任何方式吗?如果是这样 - 这段代码有什么问题?

@{ 
//Is the user logged in? 
WebSecurity.RequireAuthenticatedUser(); 

//Get the user's data 

var TheUser = WebSecurity.CurrentUserId; 

    var db= Database.Open("StarterSite"); 
    var sqlQ = "SELECT * FROM Days WHERE UserId [email protected]"; 
    var data = db.Query(sqlQ); 
    } 

我敢肯定,这不能不说是一个初学者的问题,但我只是想上手。任何帮助不胜感激。

回答

1

您需要的值传递给查询
documentation

var data = db.Query(sqlQ, TheUser); 
+0

真棒,谢谢。 – cavill

相关问题