小编Ran*_*dom的帖子

1090
推荐指数
30
解决办法
196万
查看次数

如何从网址下载图片

如果网址在链接末尾没有图像格式,是否有办法直接从c#中的网址下载图像?网址示例:

https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpf1/v/t34.0-12/10555140_10201501435212873_1318258071_n.jpg?oh=97ebc03895b7acee9aebbde7d6b002bf&oe=53C9ABB0&__gda__=1405685729_110e04e71d969d392b63b27ec4f4b24a
Run Code Online (Sandbox Code Playgroud)

我知道当网址以图像格式结束时如何下载图像.例如:

http://img1.wikia.nocookie.net/__cb20101219155130/uncyclopedia/images/7/70/Facebooklogin.png
Run Code Online (Sandbox Code Playgroud)

c# url download

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

C#7.2中Span <T>和Memory <T>有什么区别?

C#7.2引入了两个新类型:Span<T>并Memory<T>有超过早先C#类型,如更好的性能string[].

问题:Span<T>和之间有什么区别Memory<T>?为什么我会使用一个而不是另一个?

c# c#-7.2 system.memory

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

编写自己的异步方法

我想知道如何以"正确"的方式编写自己的异步方法.

我看过许多帖子解释async/await模式,如下所示:

http://msdn.microsoft.com/en-us/library/hh191443.aspx

// Three things to note in the signature: 
//  - The method has an async modifier.  
//  - The return type is Task or Task<T>. (See "Return Types" section.)
//    Here, it is Task<int> because the return statement returns an integer. 
//  - The method name ends in "Async."
async Task<int> AccessTheWebAsync()
{ 
    // You need to add a reference to System.Net.Http to declare client.
    HttpClient client = new HttpClient();

    // GetStringAsync returns a Task<string>. That means …
Run Code Online (Sandbox Code Playgroud)

.net c# asynchronous task-parallel-library async-await

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

LINQ基于childorder对单个列表进行排序

我目前正试图找出一种用LINQ和C#对我的元素进行排序的好方法,但我有点没有这样做.

对于这个问题,我们假设您有以下表格

---TempTable
ID (int)
ParentID (int)
Name (varchar)
SortOrder (int)
Run Code Online (Sandbox Code Playgroud)

ID和ParentID彼此相关,并给我一个自我分层的数据结构.根元素在ID字段中为空.SortOrder只是整个表的一部分,并且基于ParentID,因此共享相同ParentID的元素中包含1,2,3.

让我们进一步假设以下数据:

ID = 1
ParentID = null
Name = Test 1
SortOrder = 1

ID = 2
ParentID = 1
Name = Test 2
SortOrder = 1

ID = 3
ParentID = 1
Name = Test 3
SortOrder = 2

ID = 4
ParentID = 2
Name = Test 4
SortOrder = 1
Run Code Online (Sandbox Code Playgroud)

我想要的平面列表应该具有以下顺序:

Test 1 //root element with sort order 1 = very top
Test 2 //child …
Run Code Online (Sandbox Code Playgroud)

c# linq entity-framework hierarchy

20
推荐指数
1
解决办法
3808
查看次数

为什么我不能写if(object是HashSet <>)但是如果我写的话也没关系(object.GetType()== typeof(HashSet <>))

标题说明了一切,这里有一些格式:

为什么我不能写

public bool IsHashSet(object obj)
{
    return obj is HashSet<>;
}
Run Code Online (Sandbox Code Playgroud)

但这没关系:

public bool IsHashSet(object obj)
{
    return obj.GetType() == typeof(HashSet<>);
}
Run Code Online (Sandbox Code Playgroud)

(所有仿制药都是如此,并不限于此HashSet)

c# generics

19
推荐指数
2
解决办法
1150
查看次数

自动高度与MaxHeight结合使用

我在设置以下xaml布局时遇到问题:

RowHeightAuto.xaml

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="GridMaxHeight.RowHeightAuto"
    Title="RowHeightAuto" WindowState="Maximized">
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition Height="Auto" MaxHeight="200" />
    </Grid.RowDefinitions>

    <StackPanel Background="LightGray" Grid.Row="0"></StackPanel>
    <DataGrid Name="DataGrid1" Grid.Row="1" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

DataGrid1控件未显示任何定义了大量列和行的滚动条.当我用高度="*"替换高度="自动"时,一切都有效,而水平和垂直滚动条看起来像预期的那样.

当我直接在DataGrid1声明MaxHeight时它也可以工作,但这并不是我想要的.

这是一个bug控件,即childcontrol在设置Height ="Auto"时忽略了最大高度,或者我是否可能做错了?使用ListBox/ListView等可以重现相同的行为,也可以使用ComponentOne,Telerik等第三方控件...

如果这是一个错误 - 你知道一个解决方法或有其他提示吗?

这是我如何设置DataGrid的ItemsSource的代码.RowHeightAuto.xaml.cs

public partial class RowHeightAuto : Window
{
    private readonly DateTime _start;

    public RowHeightAuto()
    {
        InitializeComponent();

        DataGrid1.ItemsSource = GetTestData();

        _start = DateTime.Now;
        Dispatcher.BeginInvoke(new Action(() => MessageBox.Show((DateTime.Now - _start).TotalSeconds.ToString(CultureInfo.InvariantCulture))), DispatcherPriority.ContextIdle, null);
    }

    public static List<TestData> GetTestData()
    {
        const int maxCols = 501;
        const int maxRows = 300;

        var testDatas …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml

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

XML文档大纲窗口

谷歌搜索没有给出结果,所以我想在这里问.

Visual Studio for XML中是否有一个窗口,其行为类似于wpf/aspx /上的文档大纲窗口...

很高兴在大型XML文档上看到层次结构(xpath),而不尝试滚动到5000节点项的父节点.

编辑:

我正在使用VS 2012,但如果在VS 2013中有这样的窗口,我不介意将其用于XML文档.

visual-studio visual-studio-2012

14
推荐指数
1
解决办法
1295
查看次数

隐式(bool)和==运算符覆盖 - 正确处理if语句

我有一个自定义类,同时实现了==和implicit布尔运算符.

这是处理所有可能的if == /!=语句并获得预期结果的正确方法吗?像这样:

public class Foo
{
    public bool Result { get; set; }

    public static bool operator ==(bool @bool, Foo foo)
    {
        return Equals(foo, @bool);
    }
    public static bool operator !=(bool @bool, Foo foo)
    {
        return NotEquals(foo, @bool);
    }
    public static bool operator ==(Foo foo, bool @bool)
    {
        return Equals(foo, @bool);
    }
    public static bool operator !=(Foo foo, bool @bool)
    {
        return NotEquals(foo, @bool);
    }
    public static bool operator ==(Foo foo, Foo fooB)
    { …
Run Code Online (Sandbox Code Playgroud)

c# overriding operators implicit

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

使用数学运算符计算字符串

有没有一种简单的方法来评估字符串 "(4+8)*2" ,以便你得到24的int值?

或者还有很多工作要做到这一点......?

c# string math evaluation parsing

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