Asp.net mvc 4 在控制器中获取Guid.Empty并将其传递给视图
我需要在控制器中获取Guid.Empty并将其传递给视图。我尝试使用ViewBag,我在控制器中添加了此代码Asp.net mvc 4 在控制器中获取Guid.Empty并将其传递给视图,asp.net-mvc-4,viewbag,Asp.net Mvc 4,Viewbag,我需要在控制器中获取Guid.Empty并将其传递给视图。我尝试使用ViewBag,我在控制器中添加了此代码 public class QuestionnaireController : Controller { //.... ViewBag.EmptyGuid = Guid.Empty; } 并在视图中添加了此代码 if (rowobject[6] == ViewBag.EmptyGuid) { //...} 但是我在控制器中出现了一些错误 错误1类、结构或接口成员声明中的无效
public class QuestionnaireController : Controller
{
//....
ViewBag.EmptyGuid = Guid.Empty;
}
并在视图中添加了此代码
if (rowobject[6] == ViewBag.EmptyGuid) { //...}
但是我在控制器中出现了一些错误错误1类、结构或接口成员声明中的无效标记“=”
错误2无效令牌“;”在类、结构或接口成员声明中
出了什么问题以及如何使其工作
UPD我更改了控制器中的代码(我添加了
ViewBag.EmptyGuid
inside方法)
在我看来,这是一个脚本
@section scripts{
<script type="text/javascript"> function buttonize(cellvalue, options, rowobject) {
var buttons = '';
if (rowobject[5] == "False") {
buttons += '<input type="button" value="Edit" onclick="editQuestionnaire(' + options.rowId + ')">';
}
buttons += '<input type="button" value="Delete" onclick="deleteQuestionnaire(' + options.rowId + ')">';
if (rowobject[6] == ViewBag.EmptyGuid) {
buttons += '<input type="button" value="Publish" onclick="publishQuestionnaire(' + options.rowId + ')">';
}
else {
buttons += '<input type="button" value="Remove" onclick="removePublishQuestionnaire(' + options.rowId + ')">';
}
return buttons;
}
</script>
}
@节脚本{
函数按钮化(单元格值、选项、行对象){
var按钮=“”;
if(rowobject[5]=“False”){
按钮+='';
}
按钮+='';
if(rowobject[6]==ViewBag.EmptyGuid){
按钮+='';
}
否则{
按钮+='';
}
返回按钮;
}
}
如果类中直接有代码,则需要一个方法。例如:
public class QuestionnaireController : Controller
{
public ActionResult Index()
{
ViewBag.EmptyGuid = Guid.Empty;
return View();
{
}
这个错误实际上与MVC无关:这是无效的C#语法,您将得到一个编译错误
另一方面,当您可以使用强类型模型时,我建议您根本不要使用ViewBag
。rowobject[6]
也是如此:我不确定这是什么,但您肯定不希望视图中有数据读取器。当数据出现在视图中时,它应该已经转换为模型了。另一方面,我认为在视图中使用
Guid.Empty
或default(Guid)
没有错。是的,我已经发现了我的错误,但还是感谢您的帮助,但现在我无法查看我的查看包。清空uid
,我不知道出了什么问题?@Heidel-你能用真实的代码更新问题吗?@Heidel-如果不能解决你的问题,你不应该接受答案。现在到底出了什么问题?什么不起作用?如果我不得不猜测的话-可能guid有不同的格式-例如{12-3-4-5-abc}
vs12345abc
。你的回答解决了我问题的第一部分,我自己也找到了第二部分的解决方案-我需要在我看来使用这个代码如果(rowobject[6]='@ViewBag.EmptyGuid')
@Heidel-太棒了!我错过了那一点。。。很高兴我能帮上忙。
public class QuestionnaireController : Controller
{
public ActionResult Index()
{
ViewBag.EmptyGuid = Guid.Empty;
return View();
{
}