我一直在与一小群人一起开展编码项目,以获得乐趣.这是一个有组织,相当有凝聚力的团体.我与之合作的人都拥有与编程相关的各种技能,但其中一些使用较旧的或完全错误的方法,例如过多的全局变量,较差的命名约定等.虽然事情有效,但执行情况很差.礼貌地询问或介绍他们使用更好的方法,而不是质疑(或侮辱)他们的经验和/或教育的方法是什么?
使用OLEDB从ASP.NET 2.0(VB)应用程序使用Oracle 9i数据库.有没有办法让insert语句返回一个值?我有一个序列设置为数字条目进入数据库,但我需要在插入后返回值,所以我可以对我刚刚在代码隐藏VB中输入的集合进行一些操作.
我试图帮助另一个程序员使用一个名为Default.aspx的页面,带有代码隐藏部分,不幸的是我有点不知所措.
Partial Class _Default
Inherits OverheadClass
'A bunch of global variables here'
Private Sub page_load(ByVal sender As Object, ByVal e As System.Eventarts) Handles Me.Load
'Function goes here'
Run Code Online (Sandbox Code Playgroud)
而在我们的OverheadClass中
Public Sub Sub_OverheadClass_Load(ByVal sender As Object, ByVal e as System.EventArgs) Handles MyClass.Load
Run Code Online (Sandbox Code Playgroud)
期望的效果是继承OverheadClass时,我们希望在页面上的load事件运行之前运行它的加载.可能有一个非常简单的答案,我错过了.
编辑:我忘了注意我们用VB编写,而不是C#,因为很多人都习惯使用ASP.
我正在一个类中构建一个搜索函数,供我们的几个 asp 页面使用。这个想法很简单,从用户那里获取一个搜索词并在数据库中查询该项目。目前我这样做是错误的,这很容易受到 SQL 注入攻击(如果出现问题,ELMAH可以挽救这一天):
Public Shared Function SearchByName(ByVal searchterm As String) As DataTable
SearchByName = New DataTable
Dim con As New OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings("OracleDB").ConnectionString)
Try
con.Open()
Dim SqlStr As String = "select ID_ELEMENT, ELEMENT_NAME from table_of_elements where upper(ELEMENT_NAME) like upper('%" & searchterm & "%')"
Dim cmd As New OracleCommand(SqlStr, con)
SearchByName.Load(cmd.ExecuteReader)
Catch ex As Exception
Elmah.ErrorSignal.FromCurrentContext().Raise(ex)
End Try
con.Close()
con.Dispose()
Return SearchByName
End Function
Run Code Online (Sandbox Code Playgroud)
字符串连接不好。接下来你知道,Bobby Tables破坏了我的系统。现在,正确的方法是创建一个合适的 oracle 变量,将 :searchterm 放入字符串并添加以下行:
cmd.Parameters.Add(New OracleParameter("SEARCHTERM", searchterm))
Run Code Online (Sandbox Code Playgroud)
问题是因为我使用了一个类似的语句,我需要能够在搜索词的两边都有 %,而我似乎无法用 '%:searchterm%' 来做到这一点,它只是给出了一个错误ORA-01036: …
vb.net asp.net oracleclient system.data.oracleclient ora-01036
我在ASP.NET中使用代码隐藏页面来执行SQL查询.查询被加载到一个字符串中,建立连接(To Oracle),我们通过让连接执行.ExecuteReader到OleDBDataReader(我们称之为DataRead)来启动它.我将试着在下面举出一个例子.(将Drop视为ASP DropDownList控件)
Dim LookFor as String = "Fuzzy Bunnies"
While DataRead.Read
If LookFor = DataRead.Item("Kinds of Bunnies") Then
'Meets special critera, do secondary function'
Drop.Items.Add(DataRead.Item("Subgroup of Bunnies"))
...
End if
...
End While
Run Code Online (Sandbox Code Playgroud)
这是我知道对DropDownList进行动态添加的唯一方法.但是,DropDownList中的每个项都有.text属性和.value属性.我们如何将.value定义为与代码中的.text不同?