我有一个简单的表单,有一些简单的html输入,如使用ASP.NET Web Forms(不是MVC)的bellow
<table id="tbl_SchoolDetails">
<tbody id="tbody_SchoolDetails">
<tr>
<td>
School Name
</td>
<td>
<input id="SchoolDetails_SchoolName" type="text" value="<%= ViewModel.School.Name %>" />
</td>
</tr>
<tr>
<td>
Head Teacher
</td>
<td>
<input id="SchoolDetails_HeadTeacher_Name" type="text" value="<%= ViewModel.School.HeadTeacher.Name %>" />
</td>
</tr>
<tr>
<td>
Head Teacher Email
</td>
<td>
<input id="SchoolDetails_HeadTeacher_Email" type="text" value="<%= ViewModel.School.HeadTeacher.Email %>" />
</td>
</tr>
<tr>
<td>
Regent/Placement Contact
</td>
<td>
<input id="SchoolDetails_Regent_Name" type="text" value="<%= ViewModel.School.Regent.Name %>" />
</td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
当我回发到服务器时,文本框的值不包含在Request.Form元素中.有什么理由让我失踪.我不愿意使用asp.net控件,因为该页面后来需要相当数量的javascript来更改ui和其他东西.
我知道我可以轻松地使用MVC做到这一点,但不幸的是,此时的更改不是一个选项.
干杯科林G.
问题很简单:
假设你有一个名为Person的模型
public class Person
{
public int PersonID {get; set;}
public string Name {get; set;}
[AllowHtml] // Allow html in Intro property
public string Intro {get; set;}
[ScaffoldColumn(false)]
public string ComplicatedValue {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
在控制器的"创建"操作中
[HttpPost]
public ActionResult Create(Person o, FormCollection collection)
{
// whatever code here;
}
Run Code Online (Sandbox Code Playgroud)
如果你运行它,
我找到了这个问题的原因.
如果将功能更改为
public ActionResult Create(Person o) // Get rid of the *FormCollection collection*
{
// whatever code here;
}
Run Code Online (Sandbox Code Playgroud)
这将消除"潜在的危险"错误.
但我的问题是,对于我的应用程序,我必须在Create Action方法中使用辅助参数FormCollection集合,因为我需要使用一些其他控件值和服务器变量来为ComplicatedValue属性分配计算值.
如果ASP.NET …
我们有一个.NET Web服务API.目前,人们使用SOAP定义来使用API,因为我们需要通过SOAP标头中的自定义Authentication元素进行身份验证.完美的工作.精细.
SOAP要求请求为POST.我们希望允许用户使用GET动词(因此它可以缓存).
那么,提供简单GET API(不一定是web服务!)的最佳方法是什么,它还提供身份验证?
示例API路由:
http://www.blah.com/api/Search?query=Foo
这是一种可接受的常见做法吗?
http://www.blah.com/api/Search?query=Foo&Key=<some guid>
注意:我也不想实现SSL,也不想在IIS等中安装额外的软件或插件等.
如果有人使用ASP .NET会员资格,那会徘徊吗 如果你这样做,请告诉我你对它的看法.
如果您不使用它,您是否计划在未来的项目中使用它?如果没有,为什么?
RWendi
在rails中,是否建议使用表单助手?在内部,一切都归结为普通的html然后为什么不直接写html?在编写直接html时,性能显然会比使用帮助程序更好.使用表单助手像惯例或铁轨开发人员必须遵循的东西?
我有一个ASP.NET母版页引用#include文件,如下所示:
<!--#include virtual="/includes/scripts.inc"-->
Run Code Online (Sandbox Code Playgroud)
我修改了文件/includes/scripts.inc,但更改没有显示在页面中.需要做什么才能反映这些修改?
我需要避免以下情况:
还有其他选择吗?是否有一个设置会影响IIS缓存#include文件的时间?
是否有关于在ASP.NET MVC管道中处理请求时究竟调用哪些方法和顺序的确定指南/参考?我猜这很像序列图.
我知道IE不支持pushState,但是我希望我的用户能够使用现代浏览器享受这些优势,同时使用旧版浏览器的用户不会使用它.
目前,javascript代码阻止我的选项卡式导航在IE中完全工作,这意味着无法看到很多内容.
任何人都知道我的问题的解决方案?
这是我的JavaScript代码:
var tabContents = $(".tab_content").hide(),
tabs = $(".tab_nav li");
tabs.first().addClass("active").show();
tabContents.first().show();
tabs.click(function() {
var $this = $(this),
activeTab = $this.find('a').attr('href');
history.pushState(null, '', activeTab);
if(!$this.hasClass('active')){
$this.addClass('active').siblings().removeClass('active');
tabContents.hide().filter(activeTab).fadeIn();
}
return false;
});
$(window).bind('popstate', function(){
$.getScript(location.href);
});
Run Code Online (Sandbox Code Playgroud) asp.net ×3
.net ×2
asp.net-mvc ×2
form-helpers ×1
html ×1
iis-7 ×1
include ×1
javascript ×1
performance ×1
pushstate ×1
web-services ×1
webforms ×1
xss ×1