从零开始学ASP.NET-基础篇

 更新时间:2006年07月12日 00:00:00   作者:  

第八天

学习目的

  • 学会SQL中的占位符用法

    在鲸鱼这几天忙死了,好几天没写了,真对不起各位。这几天让XHTML闹得不开心,虽然以前也知道这个,但没太在意。可现在我是如梦初醒,我发觉XHTML是个信号,所以这几天不得不仔细研究一下这个。很笨,我还没发觉XHTML的奥妙。确实如此,没上过台面,真不知这桌菜怎样好吃。少说了,回到正题。

    先把以前的Command的CommandText重新写过:
    cmd.CommandText = "INSERT INTO NewsArticle (Title, SubTitle, Writer, Content)"
    + " valueS ( @Title, @SubTitle, @Writer, @Content )";
    这样代码是否很清晰了,我们可以避免一大串的难以看懂的的语句了。

    接下来,我们就给这些定位符赋予属性和值了:
    cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50);
    cmd.Parameters.Add("@SubTitle", SqlDbType.NVarChar, 50);
    cmd.Parameters.Add("@Writer", SqlDbType.NVarChar, 10);
    cmd.Parameters.Add("@Content", SqlDbType.NText);

    以上我们给每个占位符定义一个值类型,相信不难看懂吧。接者再给于值:
    cmd.Parameters["@Title"].value = txtTitle.Text.Trim();
    if (txtSubTitle.Text == string.Empty || txtSubTitle.Text.Trim() == "")
    {
    cmd.Parameters["@SubTitle"].value = DBNull.value;
    }
    else
    {
    cmd.Parameters["@SubTitle"].value = txtSubTitle.Text.Trim();
    }
    if (txtWriter.Text == string.Empty || txtWriter.Text.Trim() == "")
    {
    cmd.Parameters["@Writer"].value = DBNull.value;
    }
    else
    {
    cmd.Parameters["@Writer"].value = txtWriter.Text;
    }
    cmd.Parameters["@Content"].value = txtContent.Text;

    其实,也可以这样写:
    cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50) .value = txtTitle.Text.Trim();
    这要看你喜欢了。

    不错吧,程序是否很有条理。

    程序代码:
    private void btnPublish_ServerClick(object sender, System.EventArgs e)
    {
    string strConnection = ConfigurationSettings.AppSettings["SqlDatabase1"];

    // 连接SqlServer数据库
    SqlConnection conn = new SqlConnection(strConnection);
    // 建立SqlCommand
    SqlCommand cmd = conn.CreateCommand();
    cmd.CommandText = "INSERT INTO NewsArticle (Title, SubTitle, Writer, Content)"
    + " valueS ( @Title, @SubTitle, @Writer, @Content )";
    conn.Open();

    cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 50);
    cmd.Parameters.Add("@SubTitle", SqlDbType.NVarChar, 50);
    cmd.Parameters.Add("@Writer", SqlDbType.NVarChar, 10);
    cmd.Parameters.Add("@Content", SqlDbType.NText);

    cmd.Parameters["@Title"].value = txtTitle.Text.Trim();
    if (txtSubTitle.Text == string.Empty || txtSubTitle.Text.Trim() == "")
    {
    cmd.Parameters["@SubTitle"].value = DBNull.value;
    }
    else
    {
    cmd.Parameters["@SubTitle"].value = txtSubTitle.Text.Trim();
    }
    if (txtWriter.Text == string.Empty || txtWriter.Text.Trim() == "")
    {
    cmd.Parameters["@Writer"].value = DBNull.value;
    }
    else
    {
    cmd.Parameters["@Writer"].value = txtWriter.Text;
    }
    cmd.Parameters["@Content"].value = txtContent.Text;
    // 插入记录
    try
    {
    cmd.ExecuteNonQuery();
    }
    catch (Exception ex)
    {
    Response.Write("<script language=javascript>alert("输入错误,数据库不能更新。")</script>");
    }
    finally
    {
    conn.Close();
    }
    }
  • 相关文章

    • ASP.NET Core使用功能开关控制路由访问操作

      ASP.NET Core使用功能开关控制路由访问操作

      这篇文章主要介绍了ASP.NET Core使用功能开关控制路由访问操作,而对于一些试验性的功能,我们并不希望用密码去控制是否允许访问,而是想用一种开关的方式开放,下面文章我们就来试着实现这个功能,需要的小伙伴可以参考一下
      2022-02-02
    • ASP.NET Core使用功能开关控制路由访问操作(续)

      ASP.NET Core使用功能开关控制路由访问操作(续)

      这篇文章主要介绍了ASP.NET Core使用功能开关控制路由访问操作的(续),上一篇文章我们已经介绍过一部份该相关内容,​​在本文,我们可以判断当前路由地址是否为调试地址,让评估返回真,需要的小伙伴可以参考一下
      2022-02-02
    • 在NET Core 中获取 CPU 使用率

      在NET Core 中获取 CPU 使用率

      这篇文章我们分享一种如何在 .NETCore 中获取 CPU使用率的方法, 它所报告的这个值和 任务管理器 中报告的 CPU 使用值 差不多是一致的,下面来看看文中的具体详细介绍吧
      2022-01-01
    • ASP.NET Core MVC 依赖注入View与Controller

      ASP.NET Core MVC 依赖注入View与Controller

      本文重点给大家介绍的是ASP.NET Core MVC 之依赖注入 View 和ASP.NET Core MVC 之依赖注入 Controller的相关资料,需要的小伙伴可以参考下面文章具体内容
      2021-09-09
    • HttpResponse的Output与OutputStream、Filter关系与区别介绍

      HttpResponse的Output与OutputStream、Filter关系与区别介绍

      在网上经常看见有这样的代码HttpResponse response = HttpContext.Current.Response;现在我也来说说这几个东东是什么吧
      2012-11-11
    • .net程序开发IOC控制反转和DI依赖注入详解

      .net程序开发IOC控制反转和DI依赖注入详解

      这篇文章主要为大家介绍了.net程序开发IOC控制反转和DI依赖注入示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
      2022-11-11
    • .NET新能源汽车锂电池检测程序UI挂死问题分析

      .NET新能源汽车锂电池检测程序UI挂死问题分析

      这篇文章主要为大家介绍了.NET新能源汽车锂电池检测程序UI挂死问题分析 ,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
      2022-11-11
    • ASP.NET Core 6最小API中使用日志和DI示例详解

      ASP.NET Core 6最小API中使用日志和DI示例详解

      这篇文章主要为大家介绍了ASP.NET Core 6最小API中使用日志和DI示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
      2022-08-08
    • ASP.NET Core  依赖注入框架的使用

      ASP.NET Core 依赖注入框架的使用

      还记得上篇文章中最后提及到,假如服务越来越多怎么处理呢,本篇文章将会带来解决办法, ASP.NET Core 依赖注入框架的相关资料,需要的小伙伴可以参考下面文章的具体内容
      2021-10-10
    • Net内存管理五大基础

      Net内存管理五大基础

      这篇文章主要给大家分享Net内存管理五大基础内容,文章讲围绕Net内存管理详细介绍文章内容,感兴趣的朋友可以参考一下,希望对你有所帮助
      2021-10-10

    最新评论