小编Cin*_*yno的帖子

从查询中检索单个值

我正在尝试根据字符串字段用户名从单个表中检索整数值.我已经尝试使用存储过程和直接文本.当我执行存储过程时,我得到正确的返回值; 然而,正确的结果并没有通过.

以下是两组代码 - 直接文本 -

public int GetUserRole(string CUSER)
{
    try
    {
        SQLCON = new SqlConnection(connectionString);
        SQLCON.Open();
        SQLCommand = new SqlCommand();
        SQLCommand.CommandType = CommandType.Text;
        SQLCommand.Parameters.Add("USUsername", SqlDbType.VarChar).Value = CUSER;
        SQLCommand.CommandText = "SELECT USRole FROM tblUser WHERE USUsername = CUSER";
        Int32 USRole = (Int32) SQLCommand.ExecuteScalar();

        return USRole;

    }
    catch
    {
        HttpContext.Current.Response.Redirect("~/ErrorRedirect.aspx", false);
        return 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

SQL查询:

ALTER PROCEDURE [dbo].[spGetUserRole]
-- Add the parameters for the stored procedure here
    @username VARCHAR(50)
AS
BEGIN
-- Declare the return variable here
DECLARE @USRole …
Run Code Online (Sandbox Code Playgroud)

c# sql t-sql sql-server ado.net

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

Gridview模板字段数据源

我在我的asp.net页面上放置了一个gridview,并使用sql调用来获取数据源.在sql调用中,它带来了所有字段(名称,地址,电话,类型)的数据在gridview上,在编辑期间,有2个字段(电话,类型)需要是模板字段而不是绑定字段,并且项目模板中的文本框或标签(以较小者为准).

当我运行代码时,数据网格完成并填写 - 减去手机或类型字段(模板字段)的信息.如何对字段进行数据绑定,以便正确显示信息.我已经包含了我的代码.

任何帮助将不胜感激.提前致谢!

网格视图:

  <asp:GridView ID="gvMTM" runat="server" AllowPaging="True" DataKeyNames="MTMID"
    AutoGenerateColumns="False" AutoGenerateEditButton="True"
    OnRowEditing="gvMTM_RowEditing" 
    OnRowUpdating="gvMTM_UpdateRowEditing" 
    OnRowCancelingEdit="gvMTM_CancelRowEditing" >
    <Columns>
        <asp:BoundField DataField="MTMID" HeaderText="ID" />
        <asp:BoundField DataField="MTMName" HeaderText="Name" />
        <asp:BoundField DataField="Add1" HeaderText="Add1" />
        <asp:BoundField DataField="Add2" HeaderText="Add2" />
        <asp:BoundField DataField="City" HeaderText="City" />
        <asp:BoundField DataField="ST" HeaderText="ST" />
        <asp:BoundField DataField="Zip" HeaderText="Zip" />
        <asp:BoundField DataField="Email" HeaderText="Email" />
        <asp:TemplateField HeaderText="Phone#">
            <EditItemTemplate>
                <asp:TextBox ID="txtPhoneEdit" runat="server"></asp:TextBox>
                <asp:MaskedEditExtender ID="TemptxtPhone_MaskedEditExtender" runat="server" 
                    CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" 
                    CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" 
                    CultureThousandsPlaceholder="" CultureTimePlaceholder="" Enabled="True" 
                    TargetControlID="TemptxtPhone">
                </asp:MaskedEditExtender>
            </EditItemTemplate>
            <ItemTemplate>
                <asp:TextBox ID="txtPhoneRead" runat="server" BorderStyle="None"></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="RR">
            <EditItemTemplate> …
Run Code Online (Sandbox Code Playgroud)

asp.net datagridview templatefield

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

即使在分配时,如果为null,则sql不返回值

使用asp.net,C#,SQL Server 2008.

场景:用户尝试登录Web应用程序.应用程序根据列表检查用户名UserID.如果此用户是已知用户,则页面打开正常.如果用户不是已知用户,则应该打开页面,并通知联系管理员.

我一直无法编写SQL存储过程,因此它将返回值0(或其他任何内容),以便它可以用于触发控件.我已经将SQL作为测试执行了,它可以工作; 但是每次在asp端都会出错.

非常感谢任何和所有的帮助!

SQL Server存储过程代码:

ALTER PROCEDURE [dbo].[spGetUserID]
-- Add the parameters for the stored procedure here
   (@Username as varchar(64))
AS
BEGIN
  SET NOCOUNT ON;

  DECLARE @X  INT

  SET @X = (SELECT COUNT(*) FROM Users WHERE (Username = @Username))

  If @X > 0
     RETURN 
        (SELECT UID FROM Users WHERE (UserName = @Username))
  ELSE
     RETURN 99999  --IVE ALSO TRIED USING 0 HERE. 
END
Run Code Online (Sandbox Code Playgroud)

ASP.NET存储过程调用

 public int GetUserID(string Username)
 { 
       try
       {
            SQLCON = …
Run Code Online (Sandbox Code Playgroud)

c# sql asp.net sql-server-2008

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