我需要找到一种动态启用或禁用Kendo上传的方法:
@(Html.Kendo().Upload()
.Enable(false)
.Name("attachments_" + item.QuestionId)
.ShowFileList(true)
.TemplateId("fileTemplate")
.Async(a => a
.Save("SaveAttachment", "Attachment", new { evaluationId = ViewBag.EvaluationId, questionId = item.QuestionId })
.Remove("RemoveAttachment", "Attachment", new { evaluationId = ViewBag.EvaluationId, questionId = item.QuestionId })
.AutoUpload(true)
)
.Files(files =>
{
if ((IList<dynamic>)ViewData["Attachment_" + item.QuestionId] != null)
{
foreach (var f in (IList<dynamic>)ViewData["Attachment_" + item.QuestionId])
{
files.Add().Name(f.Name).Extension(f.Extension).Size(f.Size);
}
}
})
)
我该怎么做?
我尝试设置为:
.Enable(bool.Parse(ViewBag.AllowEdit))
它丢了一个错误:
"/"应用程序中的服务器错误。汇编错误描述:在为此请求提供的资源所需的资源汇编期间发生了错误。请查看以下特定错误详细信息并适当修改您的源代码。
编译器错误消息:CS1977:不能将lambda表达式用作动态派遣操作的参数,而无需首先将其施放给代表或表达树类型
源错误:
第95行:.showfilelist(true)第96行:.templateID(" FileTemplate")第97行:.ASYNC(a => a第98行:.save(" saveattachment"," attactment",new {evaluationId = viewbag.evaluationId,QuestionId = item.questionId})第99行:.remove(" removeAttachment"," attactment",new {evaluationId = viewBag.evaluationId,QuestionId = item.questionId})
有一种更简单的方法吗?
铸造该ViewBag变量首先。
。
使用Kendo上传控件要注意的一件事是,即使是残疾人员,用户仍然可以将文件拖放到它上。有一种始终禁用拖放的方法:Kendo论坛
我没有尝试这种解决方法,因为我想在启用控件时允许它。