.net嵌入c#代码(投票练习)

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<style type="text/css">
* {
margin:0px;
padding:0px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div> <asp:Label ID="lblTitle" runat="server"></asp:Label>
<br />
<br />
<div id="vote">
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
</asp:CheckBoxList>
<br />
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="提交" />
&nbsp
<input type="button" value="查看结果" onclick="xianshi()" />
</div>
<div id="result" style="display:none">
<ul style="list-style:none; margin-left:20px;">
<%
TestDataContext context = new TestDataContext();
var query = context.DiaoYanXuanXiang.Where(p=>p.TiMuDaiHao == 1).ToList(); int sum = query.Sum(p => p.Numbers).Value; foreach (DiaoYanXuanXiang data in query)
{ int ps = data.Numbers.Value; double bfb = ((ps * 1.0) / sum) * 100; double width = bfb * 2; %>
<li style="width:600px; height:20px; margin-top:10px;">
<div style="width:150px; height:20px; float:left"><%=data.Options %></div>
<div style="width:200px; height:20px; background-color:gray; float:left">
<div style="width:<%=width%>px; height:20px; background-color:red"></div>
</div>
<div style ="width:20px; height:20px; float:left"><%=ps %></div>
<div style="width:80px; height:20px; float:left">(<%=bfb %>%)</div>
</li> <%
}
%>
</ul>
<input type="button" value="返回" onclick="fanhui()" />
</div> </div>
</form>
<script type="text/javascript">
function fanhui() {
document.getElementById("vote").style.display = "block";
document.getElementById("result").style.display = "none";
}
function xianshi() { document.getElementById("vote").style.display = "none";
document.getElementById("result").style.display = "block";
}
</script>
</body>
</html>

aspx.cs代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TestDataContext context = new TestDataContext(); //查询题目
var query = context.DiaoYanTiMu.Where(p=>p.Ids==);
//显示题目名称
lblTitle.Text = query.First().Title; //显示题目选项
CheckBoxList1.DataSource = context.DiaoYanXuanXiang.Where(p=>p.TiMuDaiHao == query.First().Ids);
CheckBoxList1.DataTextField = "Options";
CheckBoxList1.DataValueField = "Ids";
CheckBoxList1.DataBind();
} }
protected void Button1_Click(object sender, EventArgs e)
{
//取投票的项,将票数更改
TestDataContext context = new TestDataContext();
foreach (ListItem ck in CheckBoxList1.Items)
{
if (ck.Selected)
{
var query = context.DiaoYanXuanXiang.Where(p=>p.Ids == Convert.ToInt32( ck.Value)); query.First().Numbers += ; context.SubmitChanges();
}
} }
}

二.使用< Script ></ Script >在HTML中嵌入C#代码

首先我们来看一看在HTML页面中嵌入JavaScript脚本程序的格式:

<SCRIPT LANGUAGE="JavaScript">

"JavaScript代码内容"
//JavaScript注释内容

</SCRIPT>
   为了通知浏览器使用的代码是JavaScript代码,必须在<SCRIPT>标记中加入LANGUAGE="JavaScript"属性。JavaScript代码一般以下面的形式包括在HTML代码中:其中,<script>标记是声明这是一个脚本程序,LANGUAGE是声明该脚本是一个Javascript 脚本。在<script>至</script>中间的任何内容都被视为脚本语句,会被浏览器解释执行。

我们用记事本编写一个HTML文件JavaScriptEx.html,代码如下:

<HTML>

<HEAD>

<TITLE>响应事件</TITLE>

</HEAD>

<BODY>

<SCRIPT LANGUAGE="JavaScript">

function aler(){

window.alert("这是JavaScript事件响应的例子");

}

</SCRIPT>

<INPUT TYPE="BUTTON" VALUE="触发按钮" ONCLICK="aler()">

</BODY>

</HTML>

保存后直接点击生成的.html文件即可在IE浏览器中运行,单击“触发按钮”后将弹出对话框,结果如下:

而对于同ASP.NET,除了<% %>标记,也可以使用<Script></ Script >标记用于在HTML中标记指令代码。对于ASP.NET,<Script>标记有两个特殊的属性:Language和Runat=”Server”。

1>     Language:该属性用于指定 <Script></ Script >之间代码所使用的编程语言,默认为Visual Basic.NET。另外,这里指定的语言必须与ASPX页首行使用的<%@ Page Language="…"%>一致,否则编译错误,这表明ASP.NET虽然支持多种编程语言,但在同一页面上只能使用一种语言。

2>     Runat=”Server”属性用于指定代码运行的位置是在服务器端。<Script></ Script >常常用于定义各种变量和函数,完成一定的功能。下面的示例是使用<Script></ Script >标记结合<% %>,根据当前日期输出不同的语句。

创建一个新的ASP.NET Web应用程序,打开ASPX页面Default.aspx,首先在<title> </title>之间添加标题“使用Script和%在HTML中嵌入C#“,在其中的<div> </div>标签中间输入以下代码:

<title>使用Script和%在HTML中嵌入C#</title>

<div>

    <!--这是HTML注释方式-->

    <%--

    <script>和</script>实现一个函数fun1,该函数根据当前星期,返回不同的日程安排。

    这是ASP.NET的注释方式

    --%>

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

    String fun1(string day)

    {

        string plan = "";/*C,C++,C#注释方式*/

        switch (day)

        {

            case "Monday":

                plan = "向客户提案!";

                break;

            case "Thuseday":

                plan = "参加霏霏的生日!";

                break;

            case "Wednesday":

                plan = "shopping!";

                break;

            case "Thursday":

                plan = "去健身房!";

                break;

            case "Friday":

                plan = "向老板汇报工作!";

                break;

            default:

                plan = "周末狂欢!";

                break;               

        }

        return plan;   

    }

    </script>

    <%--

    <% %>调用函数fun1,根据当前星期,显示日程安排。

    --%>

    <%

        string date = System.DateTime.Today.Date.ToString();

        string weekday = System.DateTime.Today.DayOfWeek.ToString();

        string output = fun1(weekday);//C,C++,C#注释方式

        Response.Write("现在是"+date+","+weekday+",我计划"+output);       

         %>    </div>

运行结果如下:

利用以上两种方法可以将C#代码嵌入到HTML中,形成ASPX动态网页文件,但是这样的页面语法混杂,难以管理,针对这个问题,ASP.NET提出了代码分离的思想:即把代码文件(C#代码)和页面显示代码(HTML代码)分离在不同的文档中,各自独立完成Web页面的逻辑功能和显示功能。然后通过<%@ CodeFile=…%>将两者绑定在一起,以达到C#代码嵌入到HTML中的效果。

Default.aspx的第一行解析:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Page …%>用来设置页面属性,各属性意义如下:

CodeFile="Default.aspx.cs"这个属性指定了隐藏在这个页面后面的代码文件,所要实现的功能代码就在Default.aspx.cs文件中。

Language="C#|VB"设置本页所采用的编程语言是C#,默认为C#

AutoEventWireup="true|false"是否使用ASP.NET约定的事件命名规则,为控件事件命名。

Inherits="…"定义公应用程序类继承的代码隐藏类

ResponseEdcodeing="…"设置ASPX编码方式,默认为Unicode。

Trace="true|false"设置是否在程序中显示代码直行的跟踪信息。

TraceMode="SortType"设置跟踪信息的排序方式,默认为根据执行时间顺序排序,“SortByTime”。

.net嵌入c#代码(投票练习)的更多相关文章

  1. linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...

  2. 在Flex (Flash)中嵌入HTML 代码或页面—Flex IFrame

    在flex组件中嵌入html代码,可以利用flex iframe.这个在很多时候会用到的,有时候flex必须得这样做,如果你不这样做还真不行-- flex而且可以和html进行JavaScript交互 ...

  3. JSP中嵌入java代码方式以及指令

    JSP中嵌入java代码的三种方式: (1)声明变量或方法 :  <%! 声明; %> :慎重使用,因为此方法定义的是全局变量 (2)java片段(scriptlet):  <% j ...

  4. 网页嵌入WMP代码(转)

    网页嵌入WMP代码 播放器代码解释,装了9.0或9.0以上的播放器才能正常使用: OBJECT id="WMP" height="176" width=&quo ...

  5. Delphi代码中嵌入ASM代码

    前言 Delphi作为一个快速高效的开发平台,使用的人越来越多,但熟悉在Delphi代码中嵌入ASM代码的程序员我想不多,因为这方面的资料太少了,另一方面,它还需要有基本的汇编语言知识,关於汇编语言的 ...

  6. Webform中Repeater控件--绑定嵌入C#代码四种方式

    网页里面嵌入C#代码用的是<% %>,嵌入php代码<?php ?> 绑定数据的四种方式: 1.直接绑定 <%#Eval("Code") %> ...

  7. Delphi代码中嵌入ASM代码(简单明了)

    前言 Delphi作为一个快速高效的开发平台,使用的人越来越多,但熟悉在Delphi代码中嵌入ASM代码的程序员我想不多,因为这方面的资料太少了,另一方面,它还需要有基本的汇编语言知识,关於汇编语言的 ...

  8. 在使用<script>嵌入JavaScript代码时,不要在代码中的任何地方出现"</script>"字符串

    在使用<script>嵌入JavaScript代码时,记住不要在代码中的任何地方出现"</script>"字符串.例如浏览器执行下面代码会报错: <s ...

  9. 实验--使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用(杨光)

    使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 攥写人:杨光  学号:20135233 ( *原创作品转载请注明出处*) ( 学习课程:<Linux内核分析>MOOC课程 ...

随机推荐

  1. artdialog的图片,标题,以及关闭按钮不显示的问题

    因其它css样式文件中包含“div{ overflow:hidden; }”引起的artdialog的图片,标题,以及关闭按钮不显示的问题: 如下图: 解决办法:在artdialog的样式文件顶部添加 ...

  2. 【示例代码】HTML+JS 画图板源码分享

    一个有趣的画图板, 用了 HTML5中的本地存储.下载.canvas 等技术,这个项目中用到了canvas 的很多基础功能,初学者可以学习一下 . 建议开发童鞋使用统一开发环境UDE来进行查看.调试. ...

  3. golang(2):beego 环境搭建

    本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/46695513 转载请一定注明出处. 1,关于beego beego是一个用Go开 ...

  4. Ext JS学习第十天 Ext基础之动态加载JS文件(补充)

    此文用来记录学习笔记: •Ext4.x版本提供的一大亮点就是Ext.Loader这个类的动态加载机制!只要遵循路径规范,即可动态加载js文件,方便把自己扩展组件动态加载进来,并且减轻浏览器的压力. • ...

  5. [译]Stairway to Integration Services Level 7 - SSIS 工作流管理中级

    介绍 前一个章节我们对SSIS的优先约束做了初步了解,并且实验了MaxConcurrentExecutables 包属性的设置. 本文将测试“On Success”, “On Completion”, ...

  6. 使用R进行相关性分析

    基于R进行相关性分析 一.相关性矩阵计算: [1] 加载数据: >data = read.csv("231-6057_2016-04-05-ZX_WD_2.csv",head ...

  7. DFS(White-Gray-Black)

    参考<数据结构与算法> 本书在复杂深度优先遍历图时,采用三种颜色标记图中节点 1 white 表示未访问 2 gray 表示已经正在访问,其相邻节点 3 black 表示该节点所有的相邻节 ...

  8. 在QuartusII 中使用tcl对工程进行复制——半自动

    最近在看coyoo的博客,加上手上有一本coyoo老师的书籍.本人是脚本小白,怎么看都没有看懂这个自动化是怎么实现的. 先说我的半自动化,后面在说我对自动化的一点疑惑—— 目前没有实现 目录环境: 首 ...

  9. IE6不支持<a>标签以外元素的hover的解决方案

    IE6以及更低版本的浏览器对“:hover”的支持不理想,对于类似的“p:hover”.“img:hover”.“#header:hover”...,今天给大家介绍一种新的方法,可以完美解决IE6不支 ...

  10. Putty远程登录VMware虚拟机Linux(Ubuntu12.04)

    为了不至于来回在Win7和Ubuntu12.04之间来回切换,在Win7下使用VMware9.0安装了Ubuntu12.04. 首先下载Vmware9.0虚拟机软件,下载地址为:VMware-work ...