我想知道是否可以在某些控制器操作中禁用Required validation属性.我想知道这是因为在我的一个编辑表单中,我不需要用户输入他们之前已经指定的字段的值.然而,我然后实现逻辑,当它们输入值时,它使用一些特殊的逻辑来更新模型,例如散列值等.
有关如何解决这个问题的任何消息?
编辑:
是的客户端验证是一个问题,因为它不允许他们提交表单而不输入值.
我只是试图使用该DateTime结构将1到12之间的整数转换为一个明确的月份名称.
这是我尝试过的:
DateTime getMonth = DateTime.ParseExact(Month.ToString(),
"M", CultureInfo.CurrentCulture);
return getMonth.ToString("MMM");
Run Code Online (Sandbox Code Playgroud)
但是我得到了FormatException第一行,因为字符串不是有效的DateTime.谁能告诉我怎么做?
我想知道将UUID转换为唯一整数的最简单方法是什么?我尝试过使用哈希码,但人们告诉我,如果我使用哈希码,它不会总是唯一的吗?
那么最简单的方法是什么?哈希码是唯一的吗?
我想知道是否可以在CSS中指定属性等于两个值之一的元素,如下所示:
input[type=text][type=password]
Run Code Online (Sandbox Code Playgroud)
但是这个选择器似乎不起作用(我假设因为指定两次相同的属性无效),有谁知道如何做到这一点?
我已经对网站进行了一次升级以使用ASP.NET MVC 4,并使用以下代码来呈现我的jQuery验证包.
但是我收到以下错误:
Microsoft JScript runtime error: Object doesn't support property or method 'live'
Run Code Online (Sandbox Code Playgroud)
单击文本框时出现此错误:
Unhandled exception at line 1234, column 5 in http://localhost:13112/Scripts/jquery.validate.js
0x800a138f - Microsoft JScript runtime error: Unable to get value of the property 'call': object is null or undefined
Run Code Online (Sandbox Code Playgroud)
我的捆绑代码:
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery.validate*"));
Run Code Online (Sandbox Code Playgroud)
我的_Layout.cshtml代码:
@Styles.Render("~/Content/css")
@Styles.Render("~/Content/themes/base/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/modernizr")
Run Code Online (Sandbox Code Playgroud)
这是我呈现的HTML:
<link href="/Content/site.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.core.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.resizable.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.selectable.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.accordion.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.autocomplete.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.button.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.dialog.css" …Run Code Online (Sandbox Code Playgroud) 我注意到我无法获得一些工作中的Knockout实时教程或应该演示可观察数据绑定的基本示例.
这是我的代码:
<!DOCTYPE html>
<html lang="en">
<html>
<head>
<meta charset="utf-8" />
<title>Testing</title>
<script type="text/javascript" src="knockout.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function TestViewModel() {
this.Name = ko.observable("Testing");
}
$(function() {
ko.applyBindings(new TestViewModel());
});
</script>
</head>
<body>
<h1>Testing Knockout.js</h1>
<div>
<div>
<span data-bind="text: Name"></span>
</div>
<div>
<input type="text" data-bind="value: Name"></input>
</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
因此,当我在谷歌浏览器或Firefox中打开它时,我希望在更改输入中的文本时,span标记的值会发生变化,但事实并非如此.有人可以解释为什么以上不起作用?(此代码几乎是从网站上的文档中复制的)
谢谢,亚历克斯.
我有一个表单,用户可以将文件上传到网站下载部分.但是,当提交表单时,我收到此错误,而没有请求进入操作方法.
"输入不是有效的Base-64字符串,因为它包含非基本64个字符,两个以上的填充字符或填充字符中的非空白字符."
码:
[HttpPost]
[Authorize]
public ActionResult Create(Download dl, HttpPostedFileBase DownloadFile)
{
Run Code Online (Sandbox Code Playgroud)
和
@model Models.Download
@{
ViewBag.Title = "Add Download";
}
<h3>Add Download</h3>
@using (Html.BeginForm("Create", "Download", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.ValidationSummary(true)
<div class="editor-label">Download File</div>
<div class="editor-field">
<input name="DownloadFile" id="DownloadFile" type="file" />
@Html.ValidationMessage("DownloadFile");
</div>
<div class="editor-label">@Html.LabelFor(model => model.Downloads)</div>
<div class="editor-field">
@Html.EditorFor(model => model.Downloads)
@Html.ValidationMessageFor(model => model.Downloads)
</div>
<div class="editor-label">@Html.LabelFor(model => model.DownloadDate)</div>
<div class="editor-field">
@Html.EditorFor(model => model.DownloadDate)
@Html.ValidationMessageFor(model => model.DownloadDate)
</div>
<div class="display-field"><input type="submit" value="Add" /></div>
}
<div>@Html.ActionLink("Back …Run Code Online (Sandbox Code Playgroud) @Scripts.Render()当我没有捆绑脚本时,我的网站在localhost上正常工作,但是当我部署到我的服务器时,捆绑的Javascript必须包含错误,因为我页面上的所有Javascript都停止工作.
这是我的捆绑代码:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-migrate-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery.validate*"));
bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
"~/Scripts/jquery-ui-{version}.js",
"~/Scripts/jquery-ui.unobtrusive-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
"~/Scripts/modernizr-*"));
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));
bundles.Add(new StyleBundle("~/Content/themes/base/css").Include(
"~/Content/themes/base/jquery.ui.core.css",
"~/Content/themes/base/jquery.ui.resizable.css",
"~/Content/themes/base/jquery.ui.selectable.css",
"~/Content/themes/base/jquery.ui.accordion.css",
"~/Content/themes/base/jquery.ui.autocomplete.css",
"~/Content/themes/base/jquery.ui.button.css",
"~/Content/themes/base/jquery.ui.dialog.css",
"~/Content/themes/base/jquery.ui.slider.css",
"~/Content/themes/base/jquery.ui.tabs.css",
"~/Content/themes/base/jquery.ui.datepicker.css",
"~/Content/themes/base/jquery.ui.progressbar.css",
"~/Content/themes/base/jquery.ui.theme.css"));
}
Run Code Online (Sandbox Code Playgroud)
这是我的渲染代码:
@Styles.Render("~/Content/css")
@Styles.Render("~/Content/themes/base/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/modernizr")
Run Code Online (Sandbox Code Playgroud)
有人可以解释部署时我的Javascript可能会发生什么吗?
谢谢,亚历克斯.
在尝试确定我是否正在使用Stream诸如ReadAsync并且CopyToAsync正确的方法时,我遇到了以下问题:
C#4.5文件读取性能sync vs async
在这个问题中,我在接受的答案中阅读了以下内容:
最值得注意的是,您的"异步"测试不使用异步I/O; 对于文件流,您必须将它们显式地打开为异步,否则您只是在后台线程上执行同步操作.
在他的异步IO代码中,他使用以下命令打开FileStream'异步':
var file = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read, 4096, true)
Run Code Online (Sandbox Code Playgroud)
所以我想知道你是否打算使用诸如CopyToAsync是否应该FileStream如上所示打开底层的方法?而不是像下面这样做一些简单的事情:
File.Open(filename, FileMode.Open)
Run Code Online (Sandbox Code Playgroud)
这是实际文档中的示例如何CopyToAsync演示打开底层FileStream:https:
//msdn.microsoft.com/en-us/library/hh159084(v = vs.110).aspx
如果底层FileStream打开的方式无关紧要,那么构造函数的useAsync参数是FileStream做什么的?
我有一种情况,我想做一些类似于ASP.NET MVC 3 ViewBag对象的内容,其中属性是在运行时创建的?还是在编译时?
无论如何,我想知道如何用这种行为创建一个对象?
c# ×7
.net ×3
.net-4.0 ×2
javascript ×2
razor-2 ×2
.net-4.5 ×1
asp.net-4.0 ×1
asp.net-mvc ×1
async-await ×1
bundle ×1
css ×1
css3 ×1
data-binding ×1
datetime ×1
dynamic ×1
file-upload ×1
java ×1
knockout.js ×1
uuid ×1
viewbag ×1