C# ASP.NET C相当于示例中留下的vbScript/VB

C# ASP.NET C相当于示例中留下的vbScript/VB,c#,asp.net,html,C#,Asp.net,Html,我继承了一个web应用程序的1页进行更新,旧的经典ASP版本大量使用了左、右和中功能。更新后的应用程序使用C ASP.NET。有没有一种方法可以导入VB的左、右和中函数,或者导入一个模拟这些函数的函数 如果字符串短于C下的length参数,C substring函数似乎会返回一个错误。不要取笑我的C代码,我几乎不用C。用所需的代码填充将非常棒 <%@ Page language="c#" %> <%@ Import namespace="Microsoft.VisualBasi

我继承了一个web应用程序的1页进行更新,旧的经典ASP版本大量使用了左、右和中功能。更新后的应用程序使用C ASP.NET。有没有一种方法可以导入VB的左、右和中函数,或者导入一个模拟这些函数的函数

如果字符串短于C下的length参数,C substring函数似乎会返回一个错误。不要取笑我的C代码,我几乎不用C。用所需的代码填充将非常棒

<%@ Page language="c#" %>
<%@ Import namespace="Microsoft.VisualBasic"%>

<script runat="server" language="C#">

protected virtual string Auth(string uid)
{
String xml;

if (!String.IsNullOrEmpty(Request["uid"]))
{

System.Data.DataTable dtTable = new System.Data.DataTable();


System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings["LocalSqlServer"].ConnectionString);
conn.Open();

string query = "SELECT id, blah, blah from users WHERE left(secretkey,30)='" + Request["uid"] + "'"; <--need to know how to use left function here

blah blah blah...

</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>blah</title>
</head>
<body>
<form id="Form1" method="post" runat="server"><% Page_Load(null, null); %></form>
</body>
</html>

从我评论中的相关问题来看

Left()       = "string".Substring(0, length)
Right()      = "string".Substring("string".Length - desiredLength)
Mid()        = "string".Substring(start, length)
第一个问题是,在本例中,您根本没有在C中调用left

字符串查询=从用户中选择id,blah,blah,其中leftsecretkey,30='+请求[uid]+'

您正在使用sql server中的left函数,这就是您在网页中没有收到任何错误的原因请参见

第二个问题是secretkey在表中,所以除非您向客户机检索它的值,否则您永远不能对其使用VB的left函数

所以我要假设这只是一个非常糟糕的例子,你正在寻找类似的东西

var secretkey=ABCDEFGHIJKLMNOP


string query=Select blah,blah from users Where secretkey=+secretkey.Substring0,30

正如我在关于wuestion的评论中所说的,您使用的是SQL的左函数,所以无论您使用的是vb还是c都无关紧要。

您使用的左函数是SQL,而不是c。。如果它较短,那么会发生什么?下面的内容应该会有所帮助。Comecme是正确的。我不需要担心C中的left,我可以在sql查询中使用left函数。请把它作为一个答案添加进来,这样我就可以给你信用了。这不会解决你的问题,但你应该使用参数化查询。例如。