标签: .net-4.0

在c#4.0中执行fire and forget方法的最简单方法

我真的很喜欢这个问题:

在C#中执行fire and forget方法的最简单方法是什么?

我只是想知道,现在我们在C#4.0中有并行扩展,是否有更好的更简洁的方法来使用并行linq进行Fire&Forget?

.net c# .net-4.0 task-parallel-library fire-and-forget

86
推荐指数
4
解决办法
5万
查看次数

如何通过LINQ压扁树?

所以我有简单的树:

class MyNode
{
 public MyNode Parent;
 public IEnumerable<MyNode> Elements;
 int group = 1;
}
Run Code Online (Sandbox Code Playgroud)

我有一个IEnumerable<MyNode>.我想得到一个列表MyNode(包括内部节点对象(Elements))作为一个平面列表Where group == 1.如何通过LINQ做这样的事情?

.net c# linq tree .net-4.0

86
推荐指数
6
解决办法
4万
查看次数

.NET 4.0中的.NET 4.0和.NET 4.5之间的差异

渴望了解.NET 4.0中.NET 4.0和.NET 4.5之间的差异以及ASP.NET中的差异,C#也在这些框架中

.net .net-4.0 .net-4.5

85
推荐指数
3
解决办法
17万
查看次数

例外:"不支持URI格式"

我有一个指向dir的绝对本地路径: "file:\\C:\\Users\\john\\documents\\visual studio 2010\\Projects\\proj"

但是当我试图将它扔进DirectoryInfo我的ctor时,我得到了"不支持URI格式"的例外.

我用Google搜索并查看了SO,但我只看到了远程路径的解决方案,而不是本地解决方案.我期待某种转换方法......

.net c# .net-4.0

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

是否可以在XP上运行.NET 4.5应用程序?

首先,我已阅读以下内容:

所以,从最后一个子弹,我真的认为没有办法解决这个问题,但我必须看看我是否可以获得一个明确的答案,因为我的团队希望从.NET 4.0升级到.NET 4.5.但是,我们必须支持XP.

如果我们想支持XP,是否有可能进入.NET 4.5?

我唯一能想到的是创建两个独立的解决方案,但如果我们使用.NET 4.5功能,那么代码库就必须分歧.

所以,我正在寻找一些我找不到的惊人解决方法,其他人可能已经知道了.

.net c# compatibility .net-4.0 .net-4.5

85
推荐指数
4
解决办法
13万
查看次数

如何在IIS7上运行时将maxAllowedContentLength设置为500MB?

我将maxAllowedContentLength更改为

<security>
    <requestFiltering>
        <requestLimits maxAllowedContentLength="5024000000" />
    </requestFiltering>
</security>
Run Code Online (Sandbox Code Playgroud)

在我的web.config中,但在IIS7上运行时出现此错误:

'maxAllowedContentLength'属性无效.不是有效的无符号整数

http://i.stack.imgur.com/u1ZFe.jpg

但是当我在VS服务器中运行时,它正常运行而没有任何错误.

如何配置我的网站允许上传500MB大小的文件,在IIS7上没有这个问题?

asp.net iis-7 file-upload .net-4.0

84
推荐指数
3
解决办法
15万
查看次数

是否有基于任务的System.Threading.Timer替换?

我是.Net 4.0的任务的新手,我无法找到我认为基于任务的替换或实现定时器,例如定期任务.有这样的事吗?

更新 我提出了我认为是我的需求的解决方案,即将"计时器"功能包装在具有子任务的任务中,所有任务都利用CancellationToken并返回任务以便能够参与进一步的任务步骤.

public static Task StartPeriodicTask(Action action, int intervalInMilliseconds, int delayInMilliseconds, CancellationToken cancelToken)
{ 
    Action wrapperAction = () =>
    {
        if (cancelToken.IsCancellationRequested) { return; }

        action();
    };

    Action mainAction = () =>
    {
        TaskCreationOptions attachedToParent = TaskCreationOptions.AttachedToParent;

        if (cancelToken.IsCancellationRequested) { return; }

        if (delayInMilliseconds > 0)
            Thread.Sleep(delayInMilliseconds);

        while (true)
        {
            if (cancelToken.IsCancellationRequested) { break; }

            Task.Factory.StartNew(wrapperAction, cancelToken, attachedToParent, TaskScheduler.Current);

            if (cancelToken.IsCancellationRequested || intervalInMilliseconds == Timeout.Infinite) { break; }

            Thread.Sleep(intervalInMilliseconds);
        }
    };

    return Task.Factory.StartNew(mainAction, cancelToken);
}      
Run Code Online (Sandbox Code Playgroud)

c# timeout timer .net-4.0 task-parallel-library

84
推荐指数
5
解决办法
6万
查看次数

ComboBox- SelectionChanged事件具有旧值,而不是新值

C#,.NET 4.0,VS2010.

WPF新手.我的MainWindow上有一个ComboBox.我挂钩了所说组合框的SelectionChanged事件.但是,如果我检查事件处理程序中组合框的值,它具有旧值.这听起来更像是一个"SelectionChanging"事件,而不是SelectionChanged事件.

如何在选择实际发生后获取ComboBox的新值?

目前:

this.MyComboBox.SelectionChanged += new SelectionChangedEventHandler(OnMyComboBoxChanged);

...
private void OnMyComboBoxChanged(object sender, SelectionChangedEventArgs e)
{
    string text = this.MyComboBox.Text;
}
Run Code Online (Sandbox Code Playgroud)

注意,如果我使用在事件args,egeOriginalSource中传递的对象,我会得到相同的行为.

c# wpf combobox .net-4.0 selectionchanged

83
推荐指数
6
解决办法
17万
查看次数

Windows 7中的.net Framework 4.0的GACUTIL在哪里?

我已经在.net框架中组装了一个程序集,我打算将其发布到GAC,但是我无法找到gacutil它.

我一直在谷歌搜索,我发现了很多建议,但没有任何作用:

  • 将程序集复制到%window%\ assemby [DOES NOT WORK]
  • 将程序集复制到%window%\ Microsoft.NET\assembly [DOES NOT WORK]
  • C:\ Program Files\Microsoft SDKs\Windows\v6.0A\Bin\gacutil.exe/i"assembly" [returns an error: this assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded]

有没有人有想法解决这个问题?

gacutil .net-4.0

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

C#使用System.Type作为通用参数

我有一个类型列表(System.Type),需要在数据库中查询.

对于每种类型,我需要调用以下extensionmethod(它是LinqToNhibernate的一部分):

Session.Linq<MyType>()
Run Code Online (Sandbox Code Playgroud)

但是我没有MyType,但我想使用Type.

我有的是:

System.Type typeOne;
Run Code Online (Sandbox Code Playgroud)

但我无法执行以下操作:

Session.Linq<typeOne>()
Run Code Online (Sandbox Code Playgroud)

如何使用Type作为通用参数?

c# generics types .net-4.0

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