小编Jas*_*Cav的帖子

如何在执行许多更新时避免在实体框架4中锁定数据库

此问题涉及使用Microsoft Entity Framework处理许多插入或更新的最佳实践.问题是我们编写了一个长期运行的程序,它从数据库中回收了数千条记录,然后逐个更新每条记录上的单个字段.令我们沮丧的是,我们意识到更新的每个记录都会在未处理ObjectContext的时间内被锁定.下面是一些伪代码(实际上没有运行)来说明:

using(ObjectContext context = new ObjectContext())
{

    var myRecords = context.CreateObjectSet<MyType>().AsQueryable();

    foreach(var record in myRecords)
    {
       record.MyField = "updated!";
       context.SaveChanges();

       //--do something really slow like call an external web service
   }
}
Run Code Online (Sandbox Code Playgroud)

问题是我们需要做很多更新而不考虑交易.我们惊讶地发现调用context.SaveChanges()实际上会在记录上创建锁,并且在释放ObjectContext之前不会释放它.我们特别不想锁定数据库中的记录,因为这是一个高流量系统,程序可能会运行数小时.

所以问题是:在Microsoft Entity Framework 4中进行许多更新的最佳方法是什么,而不是在锁定数据库的一个长事务上完成所有更新?我们希望答案不是为每个更新创建一个新的ObjectContext ......

c# sql entity-framework

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

如何在C#应用程序中使用C++/CLI

我试图从我的C#应用​​程序(通过C++/CLI)调用我的C++库.我按照这个问题的例子(针对我的具体应用).我的应用程序的设置是:

  • Project1:C++项目(我将其编译为DLL)
  • Project2:C++ Project(我的CLR包装器;只是上面例子中的头文件;引用Project1)
  • Project3:C#项目(参考Project2)

不幸的是,当我真正去访问我的C#应用​​程序中的CLR包装器对象时,我收到以下错误:

找不到类型或命名空间名称'YourClass'(您是否缺少using指令或程序集引用?)

我是否错误地设置了项目,或者还有其他我应该研究的内容?(不幸的是,我不能出于专有原因发布代码,但这是一个非常简单的代码,很容易遵循上面的例子.)

更新:

所以我完全按照Chris所说的去做(见下面的答案),但我仍然收到来自我的C#应用​​程序的消息"找不到类型或命名空间名称'MyProgram'(你是否缺少using指令或程序集)参考?).这是我的代码的(模拟).

  • Project1 - 这是我的C++应用程序.它编译/工作.我在其他地方用过它.(我从这个版本中获取了一个DLL.)
  • Project2 - 这是我的包装器的代码.

MyWrapper.h

#pragma once

#include "myorigapp.h"

using namespace System;

namespace MyProgram
{
    public ref class MyWrapper
    {
    private:
        myorigapp* NativePtr;

    public:
        MyWrapper() 
        {
            NativePtr = new myorigapp();
        }

        ~MyWrapper() 
        { 
            delete NativePtr;
            NativePtr = NULL;
        }

        void dostuff()
        { 
            NativePtr->dostuff(); 
        }
    }
}
Run Code Online (Sandbox Code Playgroud)
  • Project3 - 这是我的C#应用​​程序.

Program.cs中

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using MyProgram;

namespace Testing
{
    class Program
    { …
Run Code Online (Sandbox Code Playgroud)

.net c# command-line-interface

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

如何在团队开发中正确使用NuGet?

因此,我想使用NuGet来管理我用于我的团队和我正在进行的特定项目的各种项目.到目前为止,我已将我的.js库文件放在我的Web解决方案(ASP.NET MVC 2)的/ Scripts目录中并引用了这些文件.当然,这是手动的,在升级期间管理很烦人等.

现在我正在使用NuGet,我意识到NuGet的整个目标是让它相当无痛.此外,似乎我不应该将我的包检查到我的存储库(AKA我不再需要管理我的外部库).但是,当我从NuGet中获取jQuery(例如)时,它会将其特定文件放在我项目的/ Scripts目录中.

我感到困惑的地方 - 如果有什么,我应该在此时检查源代码管理?我还在检查/ Scripts目录吗?

此外,如果其他人正在处理此项目并从源代码管理中检出解决方案,是否会自动下载软件包(假设解决方案附带有效的packages.config)?

在我们开始全职使用NuGet之前,我只想澄清几点.

version-control nuget

13
推荐指数
1
解决办法
2239
查看次数

文本溢出时在标题中显示内容

CSS3引入,text-overflow因此您可以隐藏溢出的文本甚至添加省略号.

如果文本溢出并隐藏,我想在悬停时将其显示为工具提示.

最简单的方法是将文本添加到title元素的属性中.然而,这将使文本显示它是否溢出.

我只想在溢出时显示工具提示.

所以,如果我有这个:

<span>some text here</span>
<span>some more text here</span>
Run Code Online (Sandbox Code Playgroud)

它呈现如下:

这里有一些文字

多一点...

第一个没有工具提示,因为没有必要,第二个工具提示显示:

这里还有一些文字

有没有办法设置它?

html css jquery css3

12
推荐指数
1
解决办法
6214
查看次数

使用本地Javascript访问本地文件

基于这个网站上的其他答案,我已经觉得我知道这个问题的答案,但是,由于它略有不同,我想问一下.

是否可以从机器上本地运行的JavaScript访问本地文件(AKA,我的网站地址将是file:/// C:/ ...)?或者,这个沙盒也是吗?

我要做的是:我有一台独立的计算机,我希望人们能够将JSON或XML文件放入本地文件夹,这些文件夹在创建站点时读入并用于生成单个网页.如果无法使用JavaScript解决方案,您能提供其他任何建议吗?

谢谢.

javascript

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

增加Bootstrap Jumbotron的高度,但保持响应

我一直在玩Bootstrap的Jumbotron来放置背景图像.非常简单:

.jumbotron
{
    background: url('path/to/images/banner.jpg') no-repeat center center; 
    background-size: cover;
}
Run Code Online (Sandbox Code Playgroud)

<div class="jumbotron">
    <div class="container">...</div>
</div>
Run Code Online (Sandbox Code Playgroud)

它看起来很棒,反应灵敏.然而,Jumbotron只有它里面的内容一样大 - 我的内容很少.因此,它比我想要的要薄得多,我想在保持响应性的同时增加其默认高度.所以,例如,像这样的东西不起作用:

<div class="jumbotron">
    <div class="container" style="height: 600px;">...</div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是正确的高度,但图像不再响应.我一直在研究可用的各种mixins /变量,希望有一些东西可以弹出,我可以利用,但我没有运气.

html css responsive-design twitter-bootstrap

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

ASP.NET - bin目录与在web.conf中添加程序集

我对ASP.NET编程比较陌生(但不是一般的编程),而且我一直在查看已经交给我的项目.在这个项目中,有一个bin目录,其中包含大量各种DLL文件.

然后,在web.conf文件中,在程序集结构内部(在XML中),添加了大量其他程序集.

我已经对SO和谷歌进行了一般性的搜索,我仍然在努力解决两者之间的差异.一种方式比另一方"更好"吗?可以提供的任何澄清将是最受欢迎的.

谢谢.

asp.net assemblies

10
推荐指数
1
解决办法
1万
查看次数

如何将多个模型传递给ASP.NET MVC中的部分视图

我一直在阅读Scott Guthrie关于将ViewData从控制器传递到视图的帖子,但我不认为该课程是针对我的具体情况点击的.

(注意:由于客户端的专有限制,我不能说贴实际代码,所以如果我的编写案例有点愚蠢/混乱,我道歉.)

我有一个名为ScenarioController的Controller,它处理围绕创建Scenario模型的各种操作.用户将完成的各种操作是方案的一般CRUD.我可以创建一个为Scenario模型执行此操作的网站.但是,我最近更新了Scenario模型,现在它由各种子组件(其他对象列表)组成.相应的视图使用jQuery选项卡,它加载部分视图,最终将表单加载到各种子组件数据.不幸的是,这是我遇到麻烦的地方.

我的索引页面目前看起来像这样:

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">

<% using (Html.BeginForm()) {%>
    <div id="scenario">
        <div id="tabs">
            <ul>
                <li><a href="#tab1">Tab 1</a></li>
                <li><a href="#tab2">Tab 2</a></li>
                <li><a href="#tab3">Tab 3</a></li>
            </ul>

            <div id="tab1"><% Html.RenderPartial("Tab1"); %></div>
            <div id="tab2"><% Html.RenderPartial("Tab2"); %></div>
            <div id="tab3"><% Html.RenderPartial("Tab3"); %></div>
        </div>

        <div class="submitButtons">
            <input type="button" value="Save Scenario" id="SaveScenario" />
            <input type="button" value="Submit Scenario" id="SubmitScenario" />
        </div>
    </div>
<% } %>
</asp:Content>
Run Code Online (Sandbox Code Playgroud)

并且部分页面强烈地键入它们所代表的任何内容(主要是List<SomeObject>).

如何在Scenario模型中存储数据?我正在使用SQL数据库并与Entity Framework连接.我是否仍然需要表示各种项目列表的属性(因此我可以使用强类型类传递ViewData),或者这是我可以直接从实体调用传入ViewData(并根据需要进行转换)?

.net viewdata asp.net-mvc-2

10
推荐指数
1
解决办法
6050
查看次数

.net 4.0是否仍然支持asmx

  1. 我在VS2010中打开了我的.net 2.0 ASMX Web服务并迁移到.net4.0.如果我只是运行我的ASMX而没有将te代码更改为WCF格式,我仍然可以在.net 4.0下运行旧的asmx服务?这会有效吗?
  2. 我的web.config文件也有WSE设置会发生什么?
  3. WCF/net4.0不支持附件,我是否需要更改我的asmx webmethod以作为数据集返回正文并且这会有效吗?
  4. 我尝试使用.net 4.0中的数据集作为附件来运行我现有的asmx服务并且它有效吗?
  5. 我可以看到asmx文件可以添加到.net 2010中吗?他们仍然受到支持吗?

.net web-services asmx .net-4.0

10
推荐指数
1
解决办法
9502
查看次数

如何告诉Eclipse包含所有项目的标准.jar库

我意识到在eclipse中你可以指定某些.jar库来为各个项目添加,但我想知道是否有可能使eclipse自动将标准.jar添加到所有项目的类路径中.我正在使用eclipse进行java课程,并希望能够自动将课程的stdlib用于所有项目.

java eclipse jar

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