在asp.net 网页中使用客户端脚本 javascript

如果您在标记中包括了一个没有映射到控件属性 (property) 的属性 (attribute),则在服务器处理过程中,ASP.NET 便会忽略该属性 (attribute),并按控件生成的标记的原样将其传递给浏览器。例如,TextBox 控件不具有名为 onkeyup 的属性。因此,如果在 TextBox 控件的标记中包括 onkeyup 属性,该属性便会被传递给浏览器。此行为允许您在标记中声明事件绑定,从而向服务器控件添加事件绑定。例如,当用户在文本框中按下任意键 时,TextBox 控件的以下标记便会使文本框显示名为 spanCounter 的 span 元素中的当前文本长度:

 以声明方式向 ASP.NET 服务器控件添加客户端事件处理程序
<asp:textbox id="TextBox1" runat="server" text="Sample Text" onkeyup="spanCounter.innerText=this.value.length;" />

以编程方式向 ASP.NET 控件添加客户端事件处理程序
protected void Page_Load(object sender, EventArgs e)
{
String displayControlName = "spanCounter";
TextBox1.Attributes.Add("onkeyup", displayControlName +
".innerText=this.value.length;");
}在javascript里面我们常常使用innerHTML  .其实在asp.net里面也可以使用的

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

protected void Page_Load(object sender, EventArgs e)
{
Message.InnerHtml = Server.HtmlEncode("Welcome! You accessed this page at: " + DateTime.Now);
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HtmlContainerControl Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<span id="Message" runat=server></span>
</div>
</form>
</body>
</html>

wpf中控件绑定到程序里面实例化的对象

不过,如果要绑定到已经创建的对象,则您需要以代码形式设置 DataContext,如下例所示。

DataSet myDataSet;

private void OnInit(object sender, EventArgs e)
{
string mdbFile = Path.Combine(AppDataPath, "BookData.mdb");
string connString = string.Format(
"Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}", mdbFile);
OleDbConnection conn = new OleDbConnection(connString);
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM BookTable;", conn);

myDataSet = new DataSet();
adapter.Fill(myDataSet, "BookTable");

// myListBox is a ListBox control.
// Set the DataContext of the ListBox to myDataSet
myListBox.DataContext = myDataSet;
}

若要查看完整示例,请参见简单绑定示例绑定到 ADO.NET
数据集示例

从读取文本文件说php 和 C#

我总算知道为什么java在web方面干不过php了。

php就是简单得好,在这个追求开发效率而不是程序运行效率的年代,php就一个函数 file_get_contents — Reads entire file into a string
再看看msdn里面的c#


using System;

using System.IO;
public class TextFromFile
{
private const string FILE_NAME = "MyFile.txt";
public static void Main(String[] args)
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
String input;
while ((input=sr.ReadLine())!=null)
{
Console.WriteLine(input);
}
Console.WriteLine ("The end of the stream has been reached.");
sr.Close();
}
}


太过繁琐,不如php的简练。所以我发现自己还是喜欢php多一点。除非是很关心运行效率的地方。