Questions tagged «vb.net»

Visual Basic .NET是Microsoft开发的Visual Basic的.NET面向对象实现和演变。


7
.NET属性-使用私有集还是只读属性?
在什么情况下,我应该在属性上使用私有集而不是将其设置为ReadOnly属性?考虑以下两个非常简单的示例。 第一个例子: Public Class Person Private _name As String Public Property Name As String Get Return _name End Get Private Set(ByVal value As String) _name = value End Set End Property Public Sub WorkOnName() Dim txtInfo As TextInfo = _ Threading.Thread.CurrentThread.CurrentCulture.TextInfo Me.Name = txtInfo.ToTitleCase(Me.Name) End Sub End Class // ---------- …
45 c#  .net  vb.net 

22
为什么VB如此受欢迎?[关闭]
对我来说,Visual Basic看起来笨拙,丑陋,容易出错并且难以阅读。我让别人解释 原因。尽管就功能而言,VB.net显然是该语言的巨大飞跃,但我仍然不明白为什么有人会选择使用VB而不是C#进行编码。 但是,我仍然看到(似乎是)“ MS商店”中的绝大多数商业Web应用程序都是在VB中构建的。我可以对此进行纠正,但是VB似乎仍然比应有的受欢迎。 任何人都可以帮助回答以下任何(或全部)问题: 我在VB中缺少什么吗?它比C#更容易学习还是“更友好”?有我不知道的功能吗? 为什么今天这么频繁使用VB / VB.net,尤其是在Web项目中?

5
从整数转换为单精度时可能会失去精度
当我进入该部分时,我正在阅读Microsoft的一篇有关扩大转换和严格选择的文章。 以下转换可能会失去精度: 整数到单 长到单或双 小数到单或双 但是,这些转换不会丢失信息或幅度。 ..但根据另一篇有关数据类型的文章, 整数类型可以存储-2.147.483.648至2.147.483.647和 单一类型可以存储 1,401298E-45到3,4028235E + 38(正数), 和-3,4028235E + 38到-1,401298E-45(对于负数) ..因此Single可以比Integer存储更多的数字。我不明白在什么情况下从Integer转换为Single可能会失去精度。有人可以解释一下吗?

20
VB.Net与C#辩论[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我去过的工作场所在项目开始时就提出了“我们应该使用VB.Net还是C#”的问题。 诚然,与.Net早期相比,现在做出决定的可能性可能不大。特别是考虑到语言融合的趋势,但这仍然是一场激烈的辩论。 那么,在VB.Net和C#之间,您首选哪种语言,为什么呢?
18 c#  .net  vb.net 

6
调试代码的方法(噩梦情况)
我经常在工作中负责调试应用程序。它是一个我们部署到企业的BI应用程序,其中包括测试环境和生产环境。我想知道,基于这些限制,人们是否可以建议任何应用程序/工具/方法: 调试器不能在客户端站点上或本地使用,因为该软件依赖于我们没有测试环境的自定义第三方应用程序。(编辑:说实话,在某些情况下,可以在本地进行调试。如果我们只使用核心代码,那么大多数有问题的代码都位于一个DLL中,该DLL封装了第三方特定的通信:套接字,进程管道,soap调用,更改核心代码行为的自定义逻辑。通常,在为客户实施或增强功能时,我们会在此区域编写新代码。) 实际上,我们的应用程序中没有任何日志记录。没有单元测试。 版本控制只有完整解决方案的1个版本(使用Source Safe 2005)。因此,不可能仅通过单个文件来获得整个解决方案的先前版本。(除非有人知道解决此问题的方法)。 无法本地复制,通常无法在测试环境上复制(测试和生产版本不同的可能性很高)。 客户端使用的版本与来源安全版本不同的可能性很大。这是因为已更新单个文件,这些文件具有针对该特定客户端的嵌入式自定义逻辑。通常会发生的事情是对二进制文件进行更新,这需要更改其他几个二进制文件,但是提交完成后,没有人对此有任何记录或知识。我看到的一个常见错误是客户端环境上的“找不到函数/方法”或“方法调用指定的参数太多/太少”。 这是一个.net VB解决方案 无法在客户端站点上安装任何软件,但可以在本地 我们的应用程序具有极高的可定制性,但是不幸的是,定制逻辑分布在所有类和文件中,从前端一直到数据层,包括基于每个客户端对数据库进行的定制更改。 代码中几乎没有注释。没有有关体系结构的文档。没有有关api的文档。我们唯一拥有的是成百上千的电子邮件链,这些链在某种程度上解释了正在发生的事情。唯一知道该代码的人是最初编写该代码的人,但是他们不再是每个人所说的开发人员,因此他们不会参与其中。 在你说出来之前……是的,我知道;我也想开枪 意大利面条代码,数百个编译器警告以及确实应该修复的破碎多态性并没有帮助,但是我没有发言权。 我遇到的最常见的错误类型是空引用错误,无效的强制转换和缺少的功能/功能签名不匹配。有时我很幸运,事件查看器将记录类,方法和异常消息。它不是最有用的,但还是有帮助。最糟糕的是没有屏幕快照,没有复制步骤的错误,而且是类似于上面提到的一般错误消息。有时,不可能找出它们发生的原因,只能祈祷环境配置不正确,以后环境会消失。 我知道这有点像咆哮,在某种程度上是这样。但是我渴望选择。我还能使用其他方法/工具吗?
16 .net  vb.net  n-tier 

3
专用线程锁定对象的命名约定
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 4年前关闭。 这是一个相对较小的问题,但我无法找到官方文档,甚至找不到关于它的博客意见/讨论。 简而言之:当我有一个私有对象,其唯一目的是为私有服务时lock,该对象该如何命名? class MyClass { private object LockingObject = new object(); void DoSomething() { lock(LockingObject) { //do something } } } 我们LockingObject在这里应该命名什么?还不仅要考虑变量的名称,还要考虑变量在锁定时的代码外观。 我看过各种示例,但似乎没有可靠的建议: SyncRoot(和的各种变体形式_syncRoot)的用法很多。 代码示例: lock(SyncRoot),lock(_syncRoot) 这似乎受到VB的等效SyncLock语句,SyncRoot某些ICollection类上存在的属性以及某种SyncRoot设计模式的一部分的影响(这可能是一个坏主意) 在C#上下文中,不确定是否要使用VBish命名。更糟糕的是,在VB中将变量命名为与关键字相同。不知道这是否会引起混乱。 thisLock并lockThis来自MSDN文章:C#lock语句,VB SyncLock语句 代码示例: lock(thisLock),lock(lockThis) 不知道这些名称是否仅出于示例目的而最少命名 如果我们在static类/方法中使用它,那有点奇怪。 编辑:关于锁的Wikipedia文章也使用此命名作为其示例 PadLock(不同大小写的)的几种用法 代码示例: lock(PadLock),lock(padlock) 不错,但是我唯一的牛肉就是它毫无意外地调用了物理 “挂锁” 的图像,而我倾向于将其与抽象线程概念无关。 根据锁定意图命名锁定 代码示例: lock(messagesLock),lock(DictionaryLock),lock(commandQueueLock) 在VB SyncRoot MSDN页面示例中,它包含一个simpleMessageList带有私有messagesLock对象的示例 …

16
团队语言基础混合时,ac#dev是否应切换到VB.net?
我最近加入了一个新的开发团队,该团队在.net平台上混合了语言首选项。 开发1:知道VB.net,不知道C# Dev 2:知道VB.net,不知道c# 开发3:熟悉c#和VB.net,更喜欢c# 开发4:知道c#和VB6(VB.net应该很容易掌握),更喜欢c# 在我看来,.net空间中的思想领袖几乎都是c#开发人员。我还认为某些第三方工具不支持VB.net,但是当我开始研究它时,却没有发现任何好的例子。 我希望整个团队都使用C#,但是如果没有任何理由除优先考虑之外迫使该问题出现,那么我认为这不是正确的选择。 我有什么理由要带领人们远离VB.net?
14 c#  .net  vb.net 

6
是否有任何文件说明了.NET BigIntegers的确切数字范围?
我正在使用.NET BigInteger,基本上我想知道是什么数字(估计的答案会很好) 是((操作所需时间增加的图表)vs (BigInteger的值)? 还是它们的设计没有这样的偏差,如果我们将操作所需的时间与BigInteger的值之间的增量从1绘制到无穷大,我们将一直保持平滑的曲线吗? 例如,假设数组被设计为可以处理50个项目。这意味着如果我有1个项目,则运算是f(1)时间。当我有2个项目时,运算时间为f(2)。如果我有50个项目,则操作时间为f(50)。但由于它仅设计用于处理50个项目,因此当我们拥有51个项目时,所执行的操作将为g(51),其中g(51)> f(51)。 如果实施正确,BigInteger算法的复杂度应为平滑曲线。例如,乘法的时间复杂度应为O(NM),其中N是第一个被乘数的位数,而M是第二个被乘数的位数。当然,有实际的限制,因为您可以选择N和M太大,以至于这些数字都不适合您的计算机。 是否有/任何人知道任何声称已如此实施的文件?
12 c#  .net  vb.net  numbers 

10
我如何向非程序员解释.NET是什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我不在软件公司工作,并且是公司中一小部分对编程一无所知的人之一。我花了大量时间来自动化通过公共API在办公室使用的其他程序,并且我还创建了一些独立的应用程序。我几乎完全在C#.NET中工作,因为我们似乎在办公室使用的每个应用程序似乎都有某种形式的.NET API。 我这里有些人问我关于学习“如何编程”以及应该从哪里开始的知识。我认为学习.NET语言更加有意义,因为几乎他们想要自动化的所有程序都具有.NET API,而且听起来VBA即将退出,并被VSTA取代。 但是,我试图弄清楚如何解释.NET以及为什么他们应该向对编程一无所知的人学习。它不是真正的语言,因为有许多语言被认为是.NET语言。另外,我认为“ .NET”和“ .NET框架”之间存在区别,因为后者更多地与Microsoft提供的库有关。

7
带变量vs内联变量的string.format
有什么优点/缺点(如果有) string output; int i = 10; output = string.Format("the int is {0}", i); 与 string output; int i = 10; output = "the int is " + i; 我一直使用后一个示例,但似乎大多数在线教程都使用string.format示例。我认为效率没有真正的区别,我最初的想法是使编码人员不必为了插入变量而不断破坏字符串。
9 c#  .net  vb.net  strings 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.