小编gsh*_*arp的帖子

列表与字典(最大大小,元素数)

我试图确定列表和字典的最大大小(在RAM中).我也很好奇每个元素/条目可容纳的最大数量,以及每个条目的内存占用量.

我的理由很简单:我和大多数程序员一样,有些懒惰(这是一种美德).当我编写程序时,我喜欢编写一次程序,并尽可能地尝试将来证明它.我目前正在编写一个使用Lists的程序,但注意到迭代器需要一个整数.由于我的程序的功能仅受可用内存/编码样式的限制,我想编写它以便我可以使用带有Int64s的List或可能使用BigInts(作为迭代器).我在这里看到IEnumerable是一种可能性,但是想知道我是否可以将Int64填入Dictionary对象作为键,而不是重写所有内容.如果可以的话,我想知道与重写它相比可能会花费多少成本.

我的希望是,如果我的程序证明有用,我只需要在5年时间内重新编译以利用内存的增加.

.net c# dictionary list c#-4.0

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

多个"设置启动项目"配置

我有一个很大的解决方案,为了调试目的,我必须使用Visual Studio 2012的"设置启动项目"功能启动许多项目.但是我经常需要更改我需要启动的项目(有时是项目A,B,C,有时项目B,C,D等)

有人知道这样的扩展吗?

visual-studio visual-studio-extensions visual-studio-2012

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

使用ADO.NET创建Excel工作表(OleDb) - >支持哪些数据类型?

我尝试使用ADO.NET(OleDb)创建Excel(2003)工作表.

我能够使用OleDbCommand创建Sheet:

var cnnString = "Provider=Microsoft.Jet.OLEDB.4.0;...";
var cnn = new OleDbConnection(cnnString);
var cmd = cnn.CreateCommand();
cnn.Open();
cmd.CommandText = "CREATE TABLE MySheet (ID char(255), Field1 char(255))";
cmd.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)

这按预期工作.

这里我的问题:在CREATE TABLE命令中Excel支持哪些DataTypes(如char(255))?我做谷歌但没有找到任何文件或提示.

谢谢你的帮助.

c# oledb excel ado.net

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

在控制台应用程序中实例化WinForm

当我运行以下代码时,两个表单"挂起".任何想法为什么?

    static void Main()
    {

        Form f1 = new Form();
        f1.Show();

        Form f2 = new Form();
        f2.Show();


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

.net c# winforms

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

在Windows窗体中调用

有没有人有学习资源的链接使用Invoke?

我正在努力学习,但我看到的所有例子都无法适应我的目的.

.net invoke visual-c++ winforms

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

用于查询活动网络和关联连接的WMI

我需要更改本文所述的网络设置.到目前为止这很好用.但是,我还需要了解我所做的更改的活动网络.

(为了更好地理解,请打开Control Panel\Network and Internet\ Network and Sharing Center.不幸的是,所有图片托管网站都被我的公司阻止,所以我无法发布截图.)

有关如何查询哪些连接与WMI(或其他技术)的网络相关的任何帮助?

更新:
我需要查询远程机器.

.net c# wmi c#-4.0

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

迁移到 AutoMapper 5 - 循环引用

System.StackOverflowException我在尝试在 AutoMapper 5 中映射以前在 AutoMapper 4 中使用的某些内容时遇到了问题。

经过一番谷歌搜索后,我发现它是由Circularreferences引起的。

AutoMapper 文档说:

以前,AutoMapper 可以通过跟踪映射的内容来处理循环引用,并在每个映射上检查源/目标对象的本地哈希表以查看该项目是否已映射。事实证明,这种跟踪非常昂贵,您需要选择使用 PreserveReferences 才能使圆形地图发挥作用。或者,您可以配置 MaxDepth:

// Self-referential mapping
cfg.CreateMap<Category, CategoryDto>().MaxDepth(3);

// Circular references between users and groups
cfg.CreateMap<User, UserDto>().PreserveReferences();
Run Code Online (Sandbox Code Playgroud)

所以我添加.MaxDepth(3)到我的代码中,它现在又可以工作了。

但是我不明白真正的问题是什么以及我通过添加该行做了什么:)

我的问题:

  • 对于 Category/CategoryDto 而言,“循环引用”是什么意思?
  • 究竟是做什么的.MaxDepth()?为什么示例中使用 3?
  • .PreserveReferences()为了什么?

.net c# automapper automapper-5

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

.net core 2 的编码问题

此代码按预期工作,.net framework但在.net core 2

文件 in.txt 包含“Düsseldorf”

  • 在 .net 框架中,输出是“Düsseldorf”

  • 在 .net core 中,输出是“D?sseldorf”

(我已经绝望地尝试了所有其他编码......没有人工作)

string infile = @"C:\in.txt", outFile = @"C:\out.txt";

var inStr = new StreamReader(infile, Encoding.Default);
var outStr = new StreamWriter(outFile, false, Encoding.Default);

while (!inStr.EndOfStream)
{
    outStr.WriteLine(inStr.ReadLine());
}

outStr.Flush();
inStr.Dispose();
outStr.Dispose();
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它不起作用?

.net c# encoding .net-core

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

MemoryCache AbsoluteExpiration

使用MemoryCache时可以设置

  • AbsoluteExpiration
  • AbsoluteExpirationRelativeToNow

例:

    cache.GetOrCreate("key", f =>
    {
         f.AbsoluteExpiration = new DateTimeOffset(DateTime.Today.AddDays(1));
         f.AbsoluteExpirationRelativeToNow = TimeSpan.FromMinutes(10);
        return "item";
    });
Run Code Online (Sandbox Code Playgroud)

可以同时设置两个属性,然后应用第一个过期的属性吗?还是将最后设置的属性设置为“主”?

c# memorycache .net-core

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

声明我不想传递的参数

 public Jquery Extra(this HtmlHelper htmlhelper, 
                     string message, 
                     IDictionary<string, object> htmlAttributes)
Run Code Online (Sandbox Code Playgroud)

如果我在声明我的方法时声明这个Htmlhelper htmlhelper,但我不想在调用方法时传递该参数?

我有意义吗?

c# asp.net asp.net-mvc

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