小编ret*_*ide的帖子

C#关于IEnumerable <T> .Aggregate

我做了一些测试IList<T>.Aggregate(),但答案对我来说没有意义.

List<int> Data1 = new List<int> { 1,0,0,0,0};

var result = Data1.Aggregate<int>((total, next) => total + total);
Run Code Online (Sandbox Code Playgroud)

结果是16.

我期待它32.

谁能解释一下?

c# linq aggregate

21
推荐指数
1
解决办法
2300
查看次数

C#中"decimal"类型的有趣行为

如果我们将填充声明为const十进制,则填充不起作用.

mymoney = 1.2而你的钱= 1.20,这个行为怎么解释?

class Program
{
    static void Main(string[] args)
    {
        decimal balance = 1.2m;

        const decimal ConstPadding = 0.00m;

        decimal padding = 0.00m;
        decimal mymoney = decimal.Round(balance + ConstPadding, 2);
        decimal yourmoney =  decimal.Round(balance + padding, 2);

        Console.WriteLine(mymoney); // 1.2
        Console.WriteLine(yourmoney);  //1.20
    }
}
Run Code Online (Sandbox Code Playgroud)

c# decimal

20
推荐指数
2
解决办法
2693
查看次数

C#LINQ First()比ToArray()[0]快吗?

我正在进行测试.

看起来像:

方法1)

List<int> = new List<int>{1,2,4, .....} //assume 1000k
var  result ErrorCodes.Where(x => ReturnedErrorCodes.Contains(x)).First();
Run Code Online (Sandbox Code Playgroud)

方法2)

List<int> = new List<int>{1,2,4, .....} //assume 1000k
var  result = ErrorCodes.Where(x => ReturnedErrorCodes.Contains(x)).ToArray()[0];
Run Code Online (Sandbox Code Playgroud)

为什么方法2与方法1相比是如此之慢?

c# linq

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

C#DateTime总是创建新对象?

为什么在C#中我的两个变量指向不同的DateTime对象?

DateTime a1 = DateTime.Now;
DateTime a2 = a1;

a1 = a1 + TimeSpan.FromMinutes(15);
a2 = a2 - TimeSpan.FromMinutes(16);
Run Code Online (Sandbox Code Playgroud)

我意识到a2实际上指的是一个与a1不同的新对象.

但在其他情况下.假设我有一个人类,年龄= 1;

Person a1 = new Person();
a2 = a1;
a2 = Person.Age = 2;
Run Code Online (Sandbox Code Playgroud)

在Person Case中,a1和a2指向同一个对象.我真的很困惑,有人可以解释一下吗?

c# datetime

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

构造函数中的new与成员声明中的new有什么区别?

new构造函数和new成员声明之间有什么区别?

public class PspGame {

  private List<string>name = new List<string>();
  private List<string>_value;

  public PspGame() {
    _value = new List<string>();
  }
}
Run Code Online (Sandbox Code Playgroud)

最好的方法是什么,是否有任何性能问题?

c# constructor member

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

在数据库项目vs2012中更改数据库架构名称

我有一个数据库项目,目前正在使用"dbo"架构.我想将dbo更新为其他内容.

我能够找到项目设置来更改默认的dbo模式名称,但它只适用于新添加的表.如何将现有表从dbo更新为其他内容.

请帮我,

visual-studio-2012 sql-server-data-tools

3
推荐指数
1
解决办法
1972
查看次数

C#为什么我不能拆分字符串?

 string myNumber = "3.44";

       Regex regex1 = new Regex(".");

       string[] substrings = regex1.Split(myNumber);

        foreach (var substring in substrings)
        {
            Console.WriteLine("The string is : {0} and the length is {1}",substring, substring.Length);
        }

        Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

我试图用"."拆分字符串,但是拆分返回4个空字符串.为什么?

c# regex

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

如何将一个对象的成员绑定到datagrid

这是我的问题.我有一个类游戏,我想将一些成员绑定到datagrid,而不是整个对象.有什么更好的方法呢?创建另一个对象以保存信息,或创建数据表?

    public class Game
    {
        public string Name {get;set; }
        public string Description {get;set;}
        public string FullPath {get;set;}

    }

    List<Game> Games = new Games { game1, game2, game3 };

dataGrid1.ItemsSource = Game;  // I don't want to do this it will bind entire object.
Run Code Online (Sandbox Code Playgroud)

c# wpf binding datagrid

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

C#线程问题为什么无限循环在这里?

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

namespace ThreadExample
{
    public class Info
    {
        public int Counter;


        private static object _lock = new object();
        private List<Thread> ThreadList;

        public Info(int counter)
        {
            Counter = counter;

            ThreadList = new List<Thread>();

            ThreadList.Add(new Thread(ThreadBody));
            ThreadList.Add(new Thread(ThreadBody));

           ThreadList[0].Name = "t1";
           ThreadList[1].Name = "t2";

        }

        public void Start()
        {
            ThreadList.ForEach(t => t.Start(t.Name));
        }

        public void ThreadBody(object name)
        {
            while (Counter != 20)
            {
                lock (_lock)
                {
                    Counter++;

                    Console.WriteLine("Thread {0} : the value of …
Run Code Online (Sandbox Code Playgroud)

c# multithreading

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

绑定DataGrid不更新集合更改

我是WPF的菜鸟.希望我能找到答案.

例如,我有一个List<Customer>,它绑定到dataGrid.如果我将新客户添加到列表中,并且我没有看到datagrid在那里添加新行.

<DataGrid ItemsSource="{Binding Customers}" AutoGenerateColumns="False" Height="318">
    <DataGrid.Columns>
        <DataGridTextColumn Header="First Name" Binding="{Binding FirstName, Mode=TwoWay}" />
        <DataGridTemplateColumn Header="Image" Width="SizeToCells" IsReadOnly="True">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <Image Height="80" Source="{Binding Image,Mode=TwoWay}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)

.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Windows.Data;

namespace DataGrid
{
    public class MainWindowViewModel
    {
        public ICollectionView Customers { get; private set; }
        public ICollectionView GroupedCustomers { get; private set; }
        public List<Customer> _customers { get; set; }

        public MainWindowViewModel()
        {
            _customers …
Run Code Online (Sandbox Code Playgroud)

c# wpf bind

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

如何将StreamReader和StreamWriter部署在同一个内存流上?

 class StreamReaderWriterDemo : AbastractDemo
{
    public override void Run()
    {
        string message = "hello this is a test 0000";

        string result = string.Empty;

        try
        {
            using (var memoryStream = new MemoryStream())
            {
                StreamWriter streamWriter = new StreamWriter(memoryStream, Encoding.Default);
                this.WriteToStream(streamWriter, memoryStream, message);
                memoryStream.Position = 0;

                StreamReader streamReader = new StreamReader(memoryStream, Encoding.Default);

                result = this.ReadFromStream(streamReader, memoryStream);


                streamWriter.Dispose();
                streamReader.Dispose();
            }
        }
        catch (Exception ex)
        {

        }

        Console.WriteLine(result);          
    }


    private void WriteToStream(StreamWriter streamWriter, MemoryStream stream, string message)
    {
            streamWriter.Write(message);
            streamWriter.Flush();
            streamWriter.Close();
    }

    private string …
Run Code Online (Sandbox Code Playgroud)

c# stream

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

我们应该始终将私有方法转换为私有静态吗?

Resharper建议将私有方法转换为私有静态方法?有什么不同,有什么优势?需要一些输入.它是C#代码.

c#

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