小编Gar*_*eth的帖子

是否有"正确"的方式来读取CSV文件

可能重复:
CSV文件导入.Net

在.net中,是否有一个标准库应该用于读取csv文件?Web上的所有示例都会使用自己的csv阅读器/解析器,或者使用OleDb.

使用任何这些解决方案都不是问题,我只是想知道是否有一个普遍接受的库(不是我能找到的),或者其他任何"正确"的方法吗?

.net c# csv oledb

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

C#Library解析人类可读的时间跨度

是否存在将人类可读时间片解析为.net TimeSpan的库?

我需要能解析字符串的东西

30 days
1 week
5 hours
Run Code Online (Sandbox Code Playgroud)

这样的事情存在吗?它可能不是很难写自己,但如果有什么东西,它会更容易!

我目前不需要像"30天,3小时,5分钟"这样的功能,只需要一个值,但它不会受到伤害!

c# parsing date

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

Winforms ListView - 双击时停止自动检查

双击时,如何使列表视图不自动检查项目?

我可以尝试挂钩到MouseDoubleClick事件,并将Checked属性设置为false,但这感觉有点像黑客.在实际检查项目时,我还运行了相当昂贵的计算,并且不希望此代码在双击时运行.通过上面的事件挂钩,在处理双击之前会引发ItemCheck和ItemChecked事件.

对此有一个优雅的解决方案吗?

.net c# listview winforms

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

在SQL Server中以编程方式将索引从一个表复制到另一个表

基本上与此问题完全相同的问题:如何在SQL Server中将索引从一个表复制到另一个表,但是,如果给出源表名和目标表名,我如何在T-SQL中以编程方式执行?

即不知道前面的桌子.

我可以复制基本结构

SELECT TOP (0) * INTO [BackupTable] FROM [OriginalTable]
Run Code Online (Sandbox Code Playgroud)

但这不会复制索引,约束,触发器等

理想情况下,我想要一个看起来像这样的存储过程:

spCloneTableStructure @ExistingTableName, @NewTableName
Run Code Online (Sandbox Code Playgroud)

这会复制列,主键和索引

这样的事情存在吗?(请注意,我在SQL Server 2008 R2上)

sql-server sql-server-2008 sql-server-2008-r2

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

WCF版本控制枚举

我开始编写一些需要向前兼容和版本化的WCF数据协定.我一直在阅读这里的MSDN文章,并想知道是否有人对关于枚举的#14点进行了澄清.内容如下:

14.您不应在版本之间添加或删除枚举成员.除非使用EnumMemberAttribute属性上的Name属性将其名称保持在数据协定模型中,否则也不应重命名枚举成员.

阅读本文,我认为一旦enum发布(并由客户端使用),你无论如何都不能修改它(主要添加/删除)而不破坏兼容性?(即这将是一个突破性的变化)

有人能证实吗?

.net versioning wcf enums

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

可以将回调调用转换为IEnumerable

我正在编写第三方库的包装器,它有一种方法来扫描它管理的数据.该方法采用一种回调方法,它调用它找到的数据中的每个项目.

例如,该方法基本上是: void Scan(Action<object> callback);

我想包装它并公开一个类似的方法 IEnumerable<object> Scan();

这是否可以不使用单独的线程来进行实际扫描和缓冲?

c# callback enumerable

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

C#中的多线程压缩

.net中是否有一个对流进行多线程压缩的库?我正在考虑内置的东西System.IO.GZipStream,但使用多个线程来执行工作(从而利用所有的cpu核心).

我知道,例如使用多线程的7-zip压缩,但他们发布的C#SDK似乎并没有这样做.

c# compression multithreading

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

是否可以在 WCF 中设置数据成员的最大长度

是否可以在 WCF 中设置特定字符串数据成员具有最大长度的要求?

我基本上想做一些基本的验证,并增强 WSDL 为您提供的隐式文档。

我很确定在编写原始 WSDL 时它是可能的,但我不确定您是否可以使用属性等在 WCF 中做到这一点。

和相关的,要求一个数组属性中至少有一个元素......

c# validation wcf

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

WCF自定义Http代理身份验证

是否可以为WCF提供自定义代理地址和自定义凭据?

我在stackoverflow上找到了这个答案:如何使用凭据设置代理来生成WCF客户端?,但我有一个复杂的问题,我正在验证的服务使用自己的身份验证,所以我必须使用两组凭据(一个用于通过代理,另一个用于对服务进行身份验证)

我正在使用其他问题的答案中描述的技术来提供服务凭据.例如

client.ClientCredentials.UserName.UserName = username;
client.ClientCredentials.UserName.Password = password;
Run Code Online (Sandbox Code Playgroud)

我可以使用以下内容设置代理的地址:

(client.Endpoint.Binding as WSHttpBinding).ProxyAddress = ...;
Run Code Online (Sandbox Code Playgroud)

如何设置有效的两组凭据?(注意:代理和实际服务的凭据不同!)另请注意,代理详细信息不一定是默认的系统代理详细信息.

authentication wcf proxy

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

有没有办法强制使用DLL版本?

有没有办法强制使用特定的DLL版本?从app.config?

(backstory)我们正在使用SQL Compact 3.5,并且由于商业原因(我知道)暂时不能转移到SQL Compact 3.5 SP1.我们在构建目录中有System.Data.SqlServerCe和所有非托管dll,但是如果安装了SP1,则应用程序会加载并使用SP1托管dll(并且通过扩展,我也假设非托管dll).

pre-sp1 dll的版本号是3.5.0.0,sp1版本是3.5.1.0

我已将System.Data.SqlServerCe的引用设置为CopyLocal = true且Specific Version = true,但它仍然使用SP1版本,即使pre-sp1版本在我们的构建目录中(假设它使用的是GAC).我尝试添加GAC的引用,以及手动进入文件系统并直接引用dll.

(只是为了说清楚,客户端正在为需要它的其他软件安装Service Pack,但即使安装了Service Pack,我们仍然需要运行pre-sp1版本)

有没有办法强制.net使用我们在构建目录中的那个?

更新:

我在应用程序配置中添加了一个覆盖,就像这个问题,但运行程序集绑定日志查看器给了我:

LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Projects\ConsoleApplication11\bin\Debug\ConsoleApplication11.exe.Config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Redirect found in application configuration file: 3.5.0.0 redirected to 3.5.0.0.
LOG: Publisher policy file is found at C:\Windows\assembly\GAC_MSIL\policy.3.5.System.Data.SqlServerCe\3.5.0.0__89845dcd8080cc91\publisher.config.
LOG: Publisher policy file redirect is found: 3.5.0.0 redirected to 3.5.1.0.
LOG: ProcessorArchitecture is locked to MSIL. …
Run Code Online (Sandbox Code Playgroud)

.net c#

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

记录运行msbuild构建时每个任务所花费的时间

我有一个长期运行的msbuild脚本,我正在努力加快速度.有没有办法让msbuild记录每个目标所花费的时间?

我看过xml记录器,但它只输出总时间.

我是否必须制作自己的记录器,或者是否有内置的东西?

msbuild

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

验证当前经过身份验证的Windows用户是否具有委派权限

鉴于我有一个使用Windows身份验证的WCF服务,我想模仿它们并调用另一个WCF服务,如下所示:

using (ServiceSecurityContext.Current.WindowsIdentity.Impersonate())
{
    // call another WCF service
}
Run Code Online (Sandbox Code Playgroud)

我已经设置了所有配置设置,它工作正常,只要在客户端,它们包括以下行:

client.ClientCredentials.Windows.AllowedImpersonationLevel = TokenImpersonationLevel.Delegation;
Run Code Online (Sandbox Code Playgroud)

但是,在尝试拨打用户令牌具有委派权限的呼叫之前,我该如何验证?即我无法控制的客户端设置了AllowedPersonationLevel?

如果他们没有设置它,会抛出各种奇怪的异常(比如无法加载程序集X等).

理想情况下,我希望能够做到以下几点:

using (ServiceSecurityContext.Current.WindowsIdentity.Impersonate())
{
    if (UserDoesntHaveDelegationRights())
        throw new SecurityException("No delegation rights");

    // call another WCF service
}
Run Code Online (Sandbox Code Playgroud)

请注意,WindowsIdentity.GetCurrent().ImpersonationLevel 总是等于TokenImpersonationLevel.Impersonation,所以不幸的是,这不是一个选项.

c# impersonation wcf windows-authentication

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

WebMatrix主配置文件在哪里?

我想调整web矩阵的主配置文件.我以为我找到了它

C:\Program Files (x86)\Microsoft WebMatrix\config\applicationHost.config
Run Code Online (Sandbox Code Playgroud)

但更改文件并重新启动WebMatrix无效.我在哪里可以找到它正在使用的文件?

webmatrix

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