小编Den*_*nis的帖子

vb.net中参数化属性和函数有什么区别?

我来自C#世界到VB.NET,这让我很困惑.为什么有两种方法可以做同样的事情?或者我不知道有什么不同?

以下是有什么区别的:

Public ReadOnly Property Test(ByVal v as String) As Integer
  Get
     Return SomeOperationOn(v)
  End Get
End Property
Run Code Online (Sandbox Code Playgroud)

Public Function Test(ByVal v as String) As Integer
   Return SomeOperationOn(v)
End Function
Run Code Online (Sandbox Code Playgroud)

你什么时候使用一个而不是另一个?

.net vb.net

11
推荐指数
3
解决办法
7467
查看次数

触发器错误:无法提交当前事务,并且无法支持写入日志文件的操作

因此,当sp_SomeProc尝试执行无效的sql语句时,我从SQL Server收到以下错误消息.我收到错误:

The current transaction cannot be committed and cannot support operations that write to the log file. 
Run Code Online (Sandbox Code Playgroud)

关于我做错了什么的任何想法?(这只是我为模仿问题而创建的一个示例,所以请不要"为什么要这样做?","这有安全隐患"等等.)


所以我的表看起来像:

CREATE TABLE tSOMETABLE
(  
    RecID INT NOT NULL IDENTITY(1,1)
    Val VARCHAR(20),
CONSTRAINT [PK_tSOMETABLE] PRIMARY KEY CLUSTERED 
(
    RecID ASC
)
)
Run Code Online (Sandbox Code Playgroud)

所以在我的触发器中我有:

CREATE TRIGGER [dbo].[TR_tSOMETABLE_INSERT]     
    ON [dbo].[tSOMETABLE]   
    FOR INSERT  
AS      
SET NOCOUNT ON  
BEGIN   
         BEGIN
            SELECT * INTO #temp FROM INSERTED

            WHILE EXISTS (SELECT 1 FROM #temp)
            BEGIN
                DECLARE @RecID INT      
                SELECT @RecID = RecID
                FROM #temp t
                EXEC dbo.sp_SomeProc …
Run Code Online (Sandbox Code Playgroud)

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

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

如何在TableLayoutPanel中对齐TextBox和Label?

我已经阅读了一些关于此的文章,但似乎没有任何帮助.在以下情况下,如何对齐标签和文本框:

 Using frm As New frmWithTableLayout
     frm.TableLayoutPanel1.ColumnCount = 2
     frm.TableLayoutPanel1.RowCount = 3

     'create report Type'
     Dim lblReportType As New Label
     lblReportType.Text = "Report Type"
     lblReportType.Dock = DockStyle.Right
     Dim reportType As New System.Windows.Forms.TextBox()
     reportType.Text = "Income"
     frm.TableLayoutPanel1.Controls.Add(lblReportType, 0, 0)
     frm.TableLayoutPanel1.Controls.Add(reportType, 1, 0)
 End Using
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net winforms

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

如何配置log4net consoleappender以根据Level写入Console.Err和Console.Out?

我想写信给Console.Out当我做任何事以下logger.Warn,然后我想写信给Console.Err当我登录任何logger.Error以上.我该如何编写我的log4net配置文件?

到目前为止,我有:

<?xml version="1.0" encoding="utf-8"?>
<log4net>
      <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
        </layout>
      </appender>

      <root>
         <level value="DEBUG" />
         <appender-ref ref="ConsoleAppender" />
      </root>
</log4net>
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net log4net

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

删除引用时Visual Studio崩溃

每次从任何针对.NET 4.0的C#项目中删除引用时,我的2015 Visual Studio Pro都会崩溃.有没有解决这个问题?

Microsoft Visual Studio Professional 2015
Version 14.0.25123.00 Update 2
Microsoft .NET Framework
Version 4.6.01055
Run Code Online (Sandbox Code Playgroud)

c# visual-studio visual-studio-2015

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

如何在VB.NET中的每一行上添加注释?

我曾经是一名C#开发人员,因此这种评论风格在C#中非常容易.这让我抓狂,但是如何在VB.NET中执行此操作而不会出现语法错误?:

Private ReadOnly Property AcceptableDataFormat(ByVal e As System.Windows.Forms.DragEventArgs) As Boolean
    Get
        Return e.Data.GetDataPresent(DataFormats.FileDrop) _          'this is a file that a user might manipulate
                OrElse e.Data.GetDataPresent("FileGroupDescriptor")   'this is a typical Outlook attachment
    End Get
End Property
Run Code Online (Sandbox Code Playgroud)

.net vb.net

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

如果用户在文本框中键入或者以编程方式调用myTextBox.Text,如何查找是否触发了"TextChanged"事件

有没有办法找出"TextChanged"事件是否被触发,因为

  1. 用户正在输入文本框或
  2. 程序员调用myTextBox.Text ="something"?

只是为了给你一些颜色,当用户在文本框中键入每个字母时我不想做出反应,因此我使用"Validated"事件来捕获用户完成后我可以做出反应.问题是,当程序员执行"myTextbox.Text ="某事时,我没办法抓住.我知道捕获更改的唯一方法是使用TextChanged,但后来我不想做出反应用户在文本框中键入每个字母.有任何建议吗?

.net c# vb.net winforms

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

尝试在.NET中关闭SqlConnection时为什么会出现ThreadAbortException?

我这样做时会一直遇到以下异常:

Using cnn As SqlConnection = New SqlConnection(ConnectionStr)
    cnn.Open()  'I am fine up to here'
End Using       'Here I am getting the following exception'
Run Code Online (Sandbox Code Playgroud)

手动调用cnn.Dispose()会导致相同的异常.在我的代码中的大多数地方似乎都可以,但只是在这个函数中,我无法关闭我打开的连接,因为我不断收到ThreadAbortException.我很难过,有什么想法吗?任何提示?这是我得到的例外:

System.TypeInitializationException: The type initializer for 'System.Data.ProviderBase.DbConnectionClosedPreviouslyOpened' threw an exception. ---> System.Threading.ThreadAbortException: Exception of type 'System.Threading.ThreadAbortException' was thrown.
   --- End of inner exception stack trace ---
   at System.Data.ProviderBase.DbConnectionInternal.CloseConnection(DbConnection owningObject, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlInternalConnection.CloseConnection(DbConnection owningObject, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Close()
   at System.Data.SqlClient.SqlConnection.Dispose(Boolean disposing)
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net

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

TFS中的撤消/重做冲突解决操作

有没有办法撤消/重做VS2013/TFS中的冲突解决方案?

当真正打算"解决冲突"时,无意中点击了"使用本地更改".由于点击了"使用本地更改",因此更改完好无损.有没有办法强制VS2013/TFS再次解决冲突所以这次我们可以合并?

tfs visual-studio visual-studio-2013

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

在IDisposable对象数组中Dispose()或不Dispose()元素?

从.NET中的函数返回了大量的数组或IDisposable对象列表的示例.例如,Process.GetProcesses().

  • 如果我调用该方法,那么当我遍历它们时,我负责Dispose()所有数组成员吗?
  • 为什么它应该是我的责任,因为我从来没有创建过对象,我给出的数组只是指向我的代码之外创建的对象的指针.

我一直认为这是Dispose()的创造者的负担.那么这里适当的规则是什么?

.net c# vb.net idisposable

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