标签: .net-4.0

ExpandoObject的真正好处是什么?

添加到.NET 4 的ExpandoObject类允许您在运行时任意设置对象的属性.

使用a Dictionary<string, object>或者甚至是Hashtable有什么优势吗?据我所知,这只是一个哈希表,您可以使用稍微简洁的语法访问.

例如,为什么这样:

dynamic obj = new ExpandoObject();
obj.MyInt = 3;
obj.MyString = "Foo";
Console.WriteLine(obj.MyString);
Run Code Online (Sandbox Code Playgroud)

真的比以下更好,或者大不相同:

var obj = new Dictionary<string, object>();
obj["MyInt"] = 3;
obj["MyString"] = "Foo";

Console.WriteLine(obj["MyString"]);
Run Code Online (Sandbox Code Playgroud)

使用ExpandoObject而不是仅仅使用任意字典类型可以获得什么真正的优势,除了不明显你正在使用将在运行时确定的类型.

.net c# .net-4.0 c#-4.0

573
推荐指数
7
解决办法
12万
查看次数

App.Config转换为Visual Studio中不是Web项目的项目?

对于Visual Studio 2010基于Web的应用程序,我们具有Config Transformation功能,通过该功能,我们可以为不同的环境维护多个配置文件.但是,对于Windows Services/WinForms或控制台应用程序,App.Config文件无法使用相同的功能.

这里提供了一种解决方法:将XDT魔术应用于App.Config.

然而,它并不简单,需要许多步骤.有没有更简单的方法来实现相同的app.config文件?

app-config .net-4.0 visual-studio web-config-transform slowcheetah

528
推荐指数
9
解决办法
20万
查看次数

在.NET 4.0项目中引用.NET 2.0混合模式程序集需要什么"附加配置"?

我有一个项目,其中我想使用一些.NET 4.0功能,但核心要求是我可以使用针对2.X编译的System.Data.SQLite框架.我看到提到这是可能的,例如这里接受的答案,但我不知道如何实际实现这一点.

当我在参考2.X程序集时尝试运行我的4.0项目时,我得到:

混合模式程序集是针对运行时的版本"v2.0.50727"构建的,如果没有其他配置信息,则无法在4.0运行时加载.

什么"附加配置"是必要的?

.net c# sqlite .net-4.0 system.data.sqlite

517
推荐指数
8
解决办法
18万
查看次数

在构建服务器上找不到Microsoft.WebApplication.targets.你的解决方案是什么?

尝试在构建服务器上构建我的项目给出了以下错误:

Microsoft (R) Build Engine Version 4.0.30319.1
error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the …
Run Code Online (Sandbox Code Playgroud)

msbuild .net-4.0 build-server targets dbproj

397
推荐指数
13
解决办法
26万
查看次数

检测到的ASP.NET设置不适用于集成管理管道模式

我安装了DotNetOpenAuth SDK-3.4.5.10201.vsix,我无法让它工作.它在本地工作(当我作为localhost运行时)但当我尝试发布它不起作用.

我得到的IIS错误消息是

错误摘要
HTTP错误500.22 - 内部服务器错误
检测到的ASP.NET设置不适用于集成管理管道模式.

Module       ConfigurationValidationModule  
Notification BeginRequest  
Handler      StaticFile  
Error Code   0x80070032  
Run Code Online (Sandbox Code Playgroud)

那么有一些关于如何解决问题的建议:

你可以尝试的事情:

  • 将配置迁移到该 system.webServer/modules部分.您可以手动或通过命令行中的AppCmd执行此操作 - 例如, %SystemRoot%\system32\inetsrv\appcmd migrate config "Default Web Site/".使用AppCmd迁移应用程序将使其能够在集成模式下工作,并继续在经典模式和早期版本的IIS中工作.

  • 如果您确定可以忽略此错误,可以通过设置system.webServer/validation@validateIntegratedModeConfiguration 为false 来禁用它 .

  • 或者,将应用程序切换到经典模式应用程序池 - 例如, %SystemRoot%\system32\inetsrv\appcmd set app "Default Web Site/" /applicationPool:"Classic .NET AppPool".只有在您无法迁移应用程序时才能执行此操作.
    (将"默认网站"和"经典.NET AppPool"设置为您的应用程序路径和应用程序池名称)

但问题是我无法访问ISS服务器,因为我不是它的所有者.有什么方法可以解决这个问题吗?

c# asp.net iis .net-4.0 iis-7.5

390
推荐指数
6
解决办法
40万
查看次数

Microsoft .NET 4.0完整框架和客户端配置文件之间的差异

Microsoft .NET Framework 4.0完整安装程序(32位和64位)为48.1 MB,客户端配置文件安装程序为41.0 MB.解压缩的安装文件分别为237 MB和194 MB,一旦安装,它们分别为537 MB和427 MB.

这是110 MB的差异.两个包之间有什么区别?

什么时候安装客户端配置文件而不是完整的.NET Framework?

.net .net-4.0 .net-client-profile

357
推荐指数
4
解决办法
21万
查看次数

IIS 7.5上的ASP.NET MVC

我使用Visual Studio 2010 RC运行Windows 7旗舰版(64位).我最近决定让VS在IIS上运行/调试我的应用程序而不是随附的开发服务器.

但是,每次我尝试运行MVC应用程序时,都会收到以下错误:

HTTP错误403.14 - 禁止Web服务器配置为不列出此目录的内容.详细

错误信息

模块DirectoryListingModule

通知ExecuteRequestHandler

处理程序StaticFile错误

代码0x00000000请求

URL http:// localhost:80/mySite /

物理路径C:\ myProject\mySite \

登录方法匿名登录

用户匿名

default.aspx在目录中放置了一个文件,我收到以下错误:

HTTP错误500.21 - 内部服务器错误处理程序"PageHandlerFactory-Integrated"在其模块列表中有一个错误的模块"ManagedPipelineHandler"

有没有其他步骤我忘了采取这个工作?

注意:我在安装VS 2010 RC后安装了IIS 7.5.我使用了Visual Studio 2010中MVC项目的"属性"中"Web"选项卡下的内置"创建虚拟目录"按钮.我确保该应用程序使用的是ASP.NET 4应用程序池.

以下是我所拥有的IIS的已安装功能.

替代文字

.net-4.0 iis-7.5

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

.NET 4.0有一个新的GAC,为什么?

%windir%\Microsoft.NET\assembly\是新的GAC.这是否意味着现在我们必须管理两个GAC,一个用于.NET 2.0-3.5应用程序,另一个用于.NET 4.0应用程序?

问题是,为什么?

.net gac .net-4.0

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

为什么我得到'汇编'*.dll'必须签名强,才能被标记为先决条件.'?

我正在尝试使用C#4.0编译我的excel插件,并在Visual Studio中构建项目时开始遇到此问题.告诉你我之前没有遇到过这个问题,这很重要.什么可能导致这种情况发生?

c# .net-4.0 visual-studio

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

如何轻松初始化元组列表?

我喜欢元组.它们允许您快速将相关信息分组在一起,而无需为其编写结构或类.这在重构非常本地化的代码时非常有用.

然而,初始化它们的列表似乎有点多余.

var tupleList = new List<Tuple<int, string>>
{
    Tuple.Create( 1, "cow" ),
    Tuple.Create( 5, "chickens" ),
    Tuple.Create( 1, "airplane" )
};
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法?我希望得到一个类似于字典初始化器的解决方案.

Dictionary<int, string> students = new Dictionary<int, string>()
{
    { 111, "bleh" },
    { 112, "bloeh" },
    { 113, "blah" }
};
Run Code Online (Sandbox Code Playgroud)

我们不能使用类似的语法吗?

c# collections tuples list .net-4.0

251
推荐指数
5
解决办法
22万
查看次数