我们需要掌握Entity Framework 4.2来测试4.2中的SQL生成.
不幸的是,我们的开发环境不允许我们使用Nuget.
有没有办法获得EF4.2二进制文件,以便我们可以测试它?
我想实现一个应用程序在此页面样本如下:http://www.asp.net/entity-framework/tutorials/handling-concurrency-with-the-entity-framework-in-an-asp-net- MVC应用程序
我有一个带有Timestamp的域类作为并发检查字段:
public class PurchaseOrder {
[Timestamp]
public byte[] Timestamp {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
在我的Edit.aspx中,我将Timestamp作为隐藏字段(我正在使用视图模型):
<%: Html.HiddenFor(model => model.PurchaseOrder.Timestamp) %>
Run Code Online (Sandbox Code Playgroud)
这是我的Edit()方法:
public ActionResult Edit(int id, FormCollection collection) {
var purchaseOrder = db.PurchaseOrders.Find(id);
UpdateModel(purchaseOrder, "PurchaseOrder", collection);
db.Entry(purchaseOrder).State = EntityState.Modified;
db.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
我同时在2个独立的浏览器中打开了相同的编辑页面(这样它们的时间戳是相同的),并一个接一个地更新它们.
当我更新第二页时,我预计会出现DbUpdateConcurrencyException.但我没有.
我认为发生的是在第二页中,我在Edit操作中再次从DB获取purchaseOrder对象:
var purchaseOrder = db.PurchaseOrders.Find(id);
Run Code Online (Sandbox Code Playgroud)
因此,由于之前的编辑,时间戳是新的时间戳.
但我希望UpdateModel()从formcollection中替换Timestamp值.显然,事实并非如此.
我怎样才能检索到purchaseOrder中的时间戳的值设置为在隐藏字段,这样并发会被检测到?
asp.net-mvc concurrency entity-framework entity-framework-4.1
我有一个要求,要求我使用Spring.net来获取存储在app.config中的连接字符串,然后将检索到的连接字符串注入实例化对象.
我怎么能用Spring.net的xml配置呢?
例如,而不是我的代码执行此操作:
// Spring.net config:
<object name="myService" type="com.acme.MyService, com.acme">
<constructor-arg type="System.String" value="myConnectionName"/>
</object>
// Web.config:
<connectionStrings>
<add name="myConnectionName" connectionString="DB_connectionstring"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
// Codes:
public class MyService {
public MyService(string connectionName) {
var connectionString = ConfigurationManager.AppSettings[connectionName];
// use connectionString to create a DB connection, etc
}
}
Run Code Online (Sandbox Code Playgroud)
我希望这样:
// Spring.net config:
<object name="myService" type="com.acme.MyService, com.acme">
<constructor-arg type="System.String" ref="retrievedConnectionString"/>
</object>
// How to make a call similar to "ConfigurationManager.AppSettings[connectionName]" and get the connection string from Web.config and put inside "retrievedConnectionString"?
// Web.config: …
Run Code Online (Sandbox Code Playgroud) .net configuration configurationmanager connection-string spring.net
我有一个包含以下内容的文本文件:
# This is a comment, do not parse this: U20:%x[-2,1]
U01:%x[-2,1]
U02:%x[-2,1]/%x[-1,1]/%x[0,1]
Run Code Online (Sandbox Code Playgroud)
要求是我需要提取每行中每个方括号内的值对.
例如.对于第一行我希望得到对-2和1.对于第二行,我期望3对值.
该行应以"U"开头,后跟至少1位数字,后跟冒号":".
如果该行为空或以"#"开头,则应忽略该行.
这是我使用的正则表达式,但它并没有忽略以"#"开头的行.
(?:U\d+:|/)\%x\[(?:(-?\d+),(\d+))\]
Run Code Online (Sandbox Code Playgroud)
我如何才能更改正则表达式以使其正常工作?