小编Jim*_*Jim的帖子

ASP.NET MVC +实体框架中Include()的目的

在Visual Studio生成的控制器以及示例应用程序(ContosoUniversity)中,Index操作总是具有类似的功能

var departments = db.Departments.Include(d => d.Administrator);
Run Code Online (Sandbox Code Playgroud)

它与之间的区别是什么?

var departments = db.Departments;
Run Code Online (Sandbox Code Playgroud)

首先我怀疑第一个(使用Include)使视图能够检索department.Administrator.但第二个(没有Include)似乎也能够做到这一点.

asp.net asp.net-mvc entity-framework entity-framework-4.1 asp.net-mvc-3

12
推荐指数
2
解决办法
3万
查看次数

创建然后删除文件导致IOException

应用程序需要在目录中创建文件,在目录中执行某些操作,然后删除该文件.例如,下面的源代码:

File.Create("textfile.txt");
// Do something here
File.Delete("textfile.txt");
Run Code Online (Sandbox Code Playgroud)

如果"某事"是一个只需要很短时间的进程,File.Delete将抛出IOException(另一个进程正在使用该文件).根据另一个SO帖子:无法删除Directory.Delete(path,true)的目录,调用Thread.Sleep(0)应该允许前一个进程完成.然而,即使有

File.Create("textfile.txt");
// Do something here
Thread.Sleep(0);
File.Delete("textfile.txt");
Run Code Online (Sandbox Code Playgroud)

仍然会抛出相同的IOException.

我得到的解决方案是一个while循环,尝试重复删除文件,直到它被删除.但我想知道这是否是一个更好的解决方案.

.net c#

8
推荐指数
2
解决办法
2219
查看次数

删除SQL中的每个备用行

我需要清理一个有三列的表,ID(uniqueidentifier),Observation(nvarchar)和Timestamp(datetimeoffset).内容由两个传感器以1小时间隔生成,并且观察值与两个传感器相同.我的想法是做一个SELECT查询,如

SELECT * FROM [Records] ORDER BY [Timestamp]
Run Code Online (Sandbox Code Playgroud)

然后删除每个备用行.

我在SO上发现了如何删除访问表中的每个备用行,但这里并不真正适用,因为ID不是Int而是UID.

数据样本如下所示:

在此输入图像描述

sql sql-server sql-server-2008-r2

8
推荐指数
2
解决办法
9252
查看次数

处理ASP.NET MVC中的异步请求

我有一个ASP.NET MVC3应用程序,可以处理耗时的进程(从网络复制大文件).我们想要做的是:

  1. 用户单击按钮以发布表单以触发该过程
  2. 应用程序启动一个新线程以开始复制文件
  3. 应用程序显示一条消息,指出文件复制过程已经开始
  4. 用户可以在复制处理并在后台完成复制时关闭浏览器.

这个想法是用户不需要对过程的进度进行任何确认,也不会在过程完成时得到通知.

我们目前让控制器在Windows服务中触发事件,并使用Windows服务执行实际工作.我想知道是否有更好/更清洁的方法来做到这一点?

asp.net asp.net-mvc asynchronous asp.net-mvc-3

6
推荐指数
1
解决办法
1408
查看次数

如何在ASP.NET MVC中保留/保护Edit中的某些字段

在ASP.NET MVC的"编辑"操作中,可以使用HiddenFieldFor向用户隐藏某些字段.但是,这不会保护字段(例如ID,数据创建日期)不被编辑.

例如,模型学生具有字段ID,名称和生日.我想允许用户更新名称,但不是ID或生日.

对于像这样的编辑动作

public ActionResult Edit(Student student)
{
    if (ModelState.IsValid)
    {
        db.Entry(student).State = EntityState.Modified;
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    return View(student);
}
Run Code Online (Sandbox Code Playgroud)

如何防止编辑Id和Birthday?谢谢!

asp.net asp.net-mvc entity-framework

5
推荐指数
1
解决办法
4921
查看次数

运行多个Azure云服务(Web角色)实例是否需要负载均衡器?

如果将Web应用程序部署为具有多个实例的Azure云服务(Web角色),我是否仍应将负载均衡器放在其端点(HTTP和HTTPS)之前?

在Azure的产品页面上,它表示负载平衡由Azure内部负责:

部署应用程序之后就是这样:从配置,负载平衡到运行状况监视,Azure处理其余部分.

如果是这样的话,添加负载均衡器会带来哪些好处?

load-balancing azure azure-web-roles azure-cloud-services

5
推荐指数
1
解决办法
3809
查看次数

如何仅在Entity Framework 6.1中加载子对象的某些字段?

我的工作有两个类的模型,ProductTransaction.

public class Product
{
    [DataMember]
    public Guid ProductId {get; set;}

    [DataMember]
    public virtual ICollection<Transaction> Transactions { get; set; }
}

public class Transaction
{
    [DataMember]
    public Guid TransactionId {get; set;}

    [DataMember]
    public DateTimeOffset Date { get; set; }

    [DataMember]
    public String Customer { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

如何进行检索产品及其交易日期的查询?我试过类似的东西

var product = db.Products.Include(p => p.Transactions.Select(t => new { t.Date })).Where(p => p.ProductId = productId);
Run Code Online (Sandbox Code Playgroud)

但它引发了一个例外:

Include路径表达式必须引用在类型上定义的导航属性.使用虚线路径作为参考导航属性,使用Select运算符作为集合导航属性

编辑以澄清:我想要实现的是实际上没有加载 TransactionIdCustomer何时Transaction加载.

c# linq-to-entities entity-framework entity-framework-6

5
推荐指数
2
解决办法
3463
查看次数

如何为Visual Studio 2012删除Blend?

卸载VS2012后,Blend for Visual Studio 2012仍然存在(在开始菜单和程序文件(x86)\ Visual Studio 11\Blend中),即使我使用/ uninstall/force运行安装程序(删除所有可选组件) .如何从系统中删除它?Blend有安装程序吗?

blend visual-studio-2012

4
推荐指数
1
解决办法
4138
查看次数

没有"点"运算符的PHP字符串concat

我正在努力将插件集成到PHP Web应用程序中,一行代码让我困惑:

$sql = "update inventory set qtyleft='$qtyleft',price='$price',sales=sales+'$sales',qtysold=qtysold+'$qtysold' where id='$id'";
mysql_query($sql);
Run Code Online (Sandbox Code Playgroud)

其中$ qtyleft,$ price,$ sales,$ qtysold和$ id都是变量.

我对PHP不是很熟悉,但我一直认为PHP中的字符串连接是通过使用.运算符,在我看来,上面的代码只是一个长字符串而没有实际将这些变量放到SQL查询中.是这样的吗?

php

2
推荐指数
1
解决办法
1248
查看次数