小编Bre*_*len的帖子

Convert.ToBoolean和Boolean.Parse不接受0和1

为什么在解析布尔值时决定不接受0/1?

解析任何整数类型值时,它接受要解析的数字字符串.(如果.NET可以解析字符串"一亿二十六万五千八百六十五"我会感到惊讶).

是什么让布尔特别?它们基本上都是假的0,而根据我的经验非零是真的......

是否有一个bcl方法来解析这样的字符串,如果没有,为什么?

注意:我忘了在字符串"0"和"1"中指定.好奇但是如果已经是一个int,它就像我预期的那样工作.也许这引起了混乱.

.net boolean

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

使用SQL Server部署数据库更改的简单方法是什么?

我工作的软件系统是医疗计费系统,大量数据和数据表以及存储过程.

我正在阅读文章" 改进代码的12个步骤 ",而在Joel Test#2中则说:你能一步完成构建吗?

现在我想知道,这是否意味着部署构建(以便客户可以更新其部署).

现在我遇到的主要问题是你如何进行一步数据库更新?

目前,当我们对数据库进行更改时,会记录所有更改并将其添加到数据库更新脚本中,该脚本在创建部署到客户构建时会附加一个版本号.

有更简单的方法吗?一些脚本或应用程序在那里采用"之前和之后"查看数据库模式并创建像我提到的更新脚本?

或者这只是每个人都这样做的方式,我很难相信,但似乎有道理.

自动化系统可以减少错误,并大大加快部署构建时间,我很想知道如何这样做.

sql-server deployment database-versioning

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

如何在C#中设置项目范围的#define

我在一个项目中有几个类,它们只需要在应用程序的某些版本中,这些版本当前还没有准备好发布或调试.

为了防止这些类被使用,我想围绕它们:

#if USE_MYCLASS
// Code here...
#endif
Run Code Online (Sandbox Code Playgroud)

不幸的是,我不知道如何设置项目范围#define.

Visual Studio中是否有功能来设置项目范围的定义.

如果有,虽然我现在不需要它,是否有设置解决方案范围定义的功能?

如果没有这样的功能(看作C#没有包含文件,我想这是可能的),是否有任何方法或插件在不使用命令行编译器和/ D的情况下执行此功能?

c# compiler-directives visual-studio

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

FluentValidation字符串NotNull与NotEmpty

最初在为字符串编写验证逻辑时,我决定使用NotEmpty来处理所需的任何字符串.当使用.NotEmpty().Length(min,max)时,这将导致返回两个错误,而不是在传入空字符串时返回一个错误.

如何防止冗余错误?

.net c# string validation fluentvalidation

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

.NET的标准业务逻辑数据类

有很多"原始"锅炉板类型的数据类可以出现在许多不同的程序中.

但是,我从未见过一个类或库集,它们认识到需要将所有这些内容与它们所需的常用逻辑相结合,例如验证.

示例类([]括号对应于假设库中的类):

地址(街道,邮政编码,城市,州/领地/省,国家)
人(姓名,联系信息([电话]/[电子邮件] /等),[地址],SSN/TIN,[信用卡])
电话(号码) ,国家代码等)
CreditCard(类型,数量,到期,ccv)**

我相信有人可以拿出很多其他人.

我开发了自己的电话/地址/人员/信用卡课程,我在项目中使用,完成验证和逻辑.

但是我只能验证美国的信息.理想情况下,我的电话号码类将从基本电话类继承,因为我实际上将数字分成NPA,NXX和Station,并使用NANP标准完全验证它.

网络中是否有一组库具有全面的锅炉板数据类集合以及适当的验证?

它是否包括对全球数据集或仅美国数据的验证?

对于来自CreditCard的**,它是否能够满足PCI数据安全标准?

我知道这些是许多人可能用许多不同语言写过很多次的类,但有没有任何.NET库可以满足这些需求?

我更喜欢打开源/免费,但我会考虑付费的第三方库集.

.net business-objects boilerplate

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

类版本控制以支持向后兼容性

在我工作的项目中,我们处理医疗账单.

每次状态对官方表单(我们的数据类表示)进行更改时,为了保持与以前表单的向后兼容性,我们添加新属性但保留旧属性,并具有使用的文档版本属性确定完成哪些验证以及显示它的UI操作.

这导致了项目生命周期内的繁琐课程(近5年的国家法定变更),而且根本不支持旧文档格式不是一种选择.

我想尝试为每个文档版本创建一个新类,但即使这样,我们也会有几个非常相似(虽然稍有改动)代码的副本.而ProgressNoteV16,ProgressNoteV17等类名看起来很可怕.

不能使用继承,因为这仍然会导致相同的问题(具有不再需要的属性的类).接口会使接口变得臃肿,这无法解决问题.

用于解决此问题的解决方案和最佳实践是什么?

.net versioning document class

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

个人识别.NET程序集中的(程序员)信息

当通过我的一些在过去的应用中去,我已经注意到,编译成汇编的信息,比如在我的项目,我的用户名(这恰好是我的全名,不是我的在线处理)在Windows和老实说,我我不确定还有什么.

现在我知道这个的主要原因是在Debug下编译时,因为这是源文件或pdb文件的文件位置(不记得哪个).

问题是,其他"个人可识别"信息最终会出现在已编译的程序集中,以及可以采取哪些措施来防止这些信息在程序集中结束?

我假设如果我只是将项目设置为Release模式以禁用已编译程序集中的调试符号,这将实现我的目标,但是如果我还缺少任何其他东西,我仍然很好奇.

我一般都不知道自己做了什么,但是我确实觉得我的全名在我不知情的情况下在我的分布式集会中.

.net anonymity

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

使用C++/CLI而不是C#的情况或利弊是什么

我一直在跟上.NET CLR一段时间,而我选择的语言是C#.

直到最近,我还没有意识到C++/CLI可以生成能够运行本机和托管代码的"混合模式"可执行文件.

现在知道这一点,我的另一位开发人员朋友正在讨论这个属性,并试图确定这种能力何时以及如何有用.

我认为本机代码具有比托管代码更高效和更强大的能力,但代价是额外的开发时间.

在过去,我使用严格的本机C++代码库,并使用Interop来利用我写入本机库的功能.

我可以看到不需要额外库的好处,但我很好奇使用C++/CLI在C#中创建的soley托管可执行文件的所有优点/缺点,或使用Interop调用纯本机C++的可执行文件图书馆?

(旁注:Interop/PInvoke这两个术语是否可以互换,因为我不明白这些术语之间的区别,只是看到它们使用相同的方式.)

.net c# clr c++-cli

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

F#的timeit函数

我想写点像

let timeit (x:'a->'b) =
    let start = System.DateTime.Now
    x
    let duration = System.DateTime.Now - start
    printfn "time usage = %A" duration.Milliseconds 
    ()
Run Code Online (Sandbox Code Playgroud)

它适用于

let matrixtest() =
    let x = vector[1.;2.;4.]
    let y = matrix[[1.;2.;4.;];[3.;4.;9.;]]
    printfn "%A" (y * x)
    ()
Run Code Online (Sandbox Code Playgroud)

但不是

let rec fib x = 
        match x with
        | 0 | 1 -> 1
        | n -> fib (n-1) + fib (n-2)
Run Code Online (Sandbox Code Playgroud)

sa F#是静态类型的.

任何的想法?谢谢.

.net f#

7
推荐指数
4
解决办法
957
查看次数

哪些模板支持数据库逆向工程?

我安装了Visio 2016专业版,我所有的研究都应该支持数据库逆向工程.

我找到的每个指南都说要转到软件和数据库类别,然后为数据库选项卡选择"数据库模型图",弹出逆向工程选项.

我没有看到我的列表中的这个模板,我试过的那个模板没有显示数据库选项卡.我是否遗漏了列表中的内容,或者哪个允许此功能?如果我有一个支持该功能,我将如何启用它?

在此输入图像描述

database visio

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