什么是asp.net MVC packages.config?
我是否需要其中的项目来反映网站/应用程序中使用的内容?
我是一名新手网络程序员,所以如果我的一些"行话"不正确,请原谅我.我有一个使用ASP.NET使用MVC3框架的项目.
我正在管理视图,管理员将修改设备列表.其中一个功能是一个"更新"按钮,我想使用jquery在向MVC控制器发送帖子后动态编辑网页上的条目.
我认为这种方法在单个管理设置中是"安全的",其中对网页与数据库不同步的关注最少.
我创建了一个强类型的视图,并希望使用AJAX帖子将模型数据传递给MVC控件.
在下面的文章中,我发现了一些类似于我正在做的事情: JQuery Ajax和ASP.NET MVC3导致null参数
我将使用上面帖子中的代码示例.
模型:
public class AddressInfo
{
public string Address1 { get; set; }
public string Address2 { get; set; }
public string City { get; set; }
public string State { get; set; }
public string ZipCode { get; set; }
public string Country { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Check(AddressInfo addressInfo)
{
return Json(new { …Run Code Online (Sandbox Code Playgroud) 我在_Layout.cshtml文件的页脚中使用以下代码将AssemblyInfo版本数据放入我的MVC3站点中每个页面的页脚.然而:
@System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString()
Run Code Online (Sandbox Code Playgroud)
只需在页脚中打印:
Revision 0.0.0.0
Run Code Online (Sandbox Code Playgroud)
当我修改视图以使用以下内容显示"执行装配"的所有装配信息时
@System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString()
Run Code Online (Sandbox Code Playgroud)
其中打印以下内容:
Revision App_Web__layout.cshtml.639c3968.hlogy75x, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
Run Code Online (Sandbox Code Playgroud)
这表明"执行程序集"不是我的主要应用程序,它是视图本身.
如何获取ACTUAL应用程序的程序集信息,而不仅仅是单个视图?
是否可以在ASP.NET MVC 3中使用JSON.NET作为默认的JSON序列化程序?
根据我的研究,似乎完成此任务的唯一方法是扩展ActionResult,因为MVC3中的JsonResult不是虚拟的 ......
我希望在ASP.NET MVC 3中有一种方法可以指定一个可插入的提供程序来序列化为JSON.
思考?
我尝试这样做的主要动机是获取Javascript,只需要页面底部的部分Javascript和其他Javascript,而不是在部分呈现的页面中间.
这是我正在尝试做的简化示例:
这是在正文之前的Scripts部分的布局.
<!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
</head>
<body>
@RenderBody()
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
@RenderSection("Scripts", false)
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是使用此布局的示例视图.
<h2>This is the view</h2>
@{Html.RenderPartial("_Partial");}
@section Scripts {
<script type="text/javascript">
alert("I'm a view.");
</script>
}
Run Code Online (Sandbox Code Playgroud)
这是从视图中呈现的部分内容.
<p>This is the partial.</p>
@* this never makes it into the rendered page *@
@section Scripts {
<script type="text/javascript">
alert("I'm a partial.");
</script>
}
Run Code Online (Sandbox Code Playgroud)
在此示例中,视图中指定的标记放在节中,但不包含部分标记.是否可以使用Razor从局部视图填充部分?如果没有,还有哪些其他方法可以获取Javascript,只需要页面底部的部分内容,而不是全局包含它?
我一直在寻找有关如何使用代码首先EF 4.1声明外键关系和其他约束的资源,而没有太多运气.基本上我是在代码中构建数据模型并使用MVC3来查询该模型.一切都通过MVC工作,这是伟大的(对微软的赞誉!)但现在我希望它不工作,因为我需要有数据模型约束.
例如,我有一个Order对象,它有很多属性是外部对象(表).现在我可以创建一个没有问题的订单,但是无法添加外键或外部对象.MVC3设置这没问题.
我意识到我可以在保存之前在控制器类中自己添加对象,但是如果没有满足约束关系,我希望调用DbContext.SaveChanges()失败.
新的消息
所以,具体来说,当我尝试保存Order对象而不指定客户对象时,我希望发生异常.如果我只是编写大多数Code First EF文档中描述的对象,这似乎不是行为.
最新代码:
public class Order
{
public int Id { get; set; }
[ForeignKey( "Parent" )]
public Patient Patient { get; set; }
[ForeignKey("CertificationPeriod")]
public CertificationPeriod CertificationPeriod { get; set; }
[ForeignKey("Agency")]
public Agency Agency { get; set; }
[ForeignKey("Diagnosis")]
public Diagnosis PrimaryDiagnosis { get; set; }
[ForeignKey("OrderApprovalStatus")]
public OrderApprovalStatus ApprovalStatus { get; set; }
[ForeignKey("User")]
public User User { get; set; }
[ForeignKey("User")]
public User Submitter { get; set; }
public DateTime …Run Code Online (Sandbox Code Playgroud) 使用asp.net mvc中的属性进行验证非常好.[Range(min, max)]到目前为止,我一直在使用验证器来检查值,例如:
[Range(1, 10)]
public int SomeNumber { get; set; }
Run Code Online (Sandbox Code Playgroud)
但是 - 现在我需要分别检查最小和最大条件.我希望找到这样的属性:
[MinValue(1, "Value must be at least 1")]
[MaxValue(10, "Value can't be more than 10")]
public int SomeNumber { get; set; }
Run Code Online (Sandbox Code Playgroud)
是否有任何预定义的属性来写这个?或者我如何实现这一目标?
我正在尝试基于另一个程序集中的类创建一个强类型视图.无论出于何种原因,我的Razor视图似乎没有对我的项目中引用的其他程序集的任何可见性.例如
@model MyClasses.MyModel
Run Code Online (Sandbox Code Playgroud)
导致Visual Studio 2010中的错误," MyClasses无法找到类型或命名空间名称(您是否缺少using指令或程序集引用?)."
标准视图引擎中引用的同一个类可以正常工作.我在尝试引用我视图中的类时遇到同样的问题.
我错过了一些关于Razor的东西,还是我需要以其他方式引用装配?
非常简单的问题:ASP.NET中的控制器是为每个HTTP请求创建的,还是在应用程序启动时创建并在整个请求中重用?
是否只为特定的HTTP请求创建控制器?
如果我之前的假设是正确的,我可以依赖它吗?我想创建仅适用于一个请求的数据库上下文(实体框架).如果我将它创建为在控制器的构造函数中初始化的属性,是否会为每个请求创建新的上下文实例?
我是RoR的新手,我想在APS.NET MVC3和RoR之间进行选择.C#对我来说确实比较容易,因为我已经这么做了很长时间,但我想知道是否有任何意义可以考虑使用RoR而不是.MVC来开发真实世界的网站?
我还有什么方法可以使用值得花时间掌握RoR的ASP.NET MVC 3无法获得的RoR?我虽然可用的社区RoR插件是一个原因,但它似乎没有组织,似乎做正确的事情的学习曲线将是如此之大,以至于它实际上不会为新手节省太多时间!我在这里错了,我真的很感谢你对此的现实评论?请注意,我仍然需要学习ASP.NET MVC,但对于一个.NET Guy来说听起来很快!
有什么能回报率报价,一个.NET家伙WORTH选择回报率在ASP.NET MVC 3?并请实用的建议!:)
asp.net-mvc-3 ×10
razor ×3
.net ×1
asp.net ×1
asp.net-mvc ×1
assemblies ×1
c# ×1
controller ×1
httprequest ×1
javascript ×1
jquery ×1
json.net ×1
jsonresult ×1
reflection ×1
validation ×1