在asp.net AJAX客户端使用复杂数据类型方法
<script language="javascript" type="text/javascript">
function doubleSalary()
{
var employee = new Object();
employee.FirstName = "X";
employee.LastName = "PP";
employee.Salary = 1000;
ComplexType.ServerMethod(employee, onServerMethodSucceeded);
}
function onServerMethodSucceeded(result)
{
var message = String.format(
"First Name: {0}\nLast Name: {1}\nFull Name: {2}\nSalary: {3}",
result.FirstName,
result.LastName,
result.FullName,
result.Salary);
alert(message);
}
</script>
这段代码首先定义了一个doubleSalary方法,里面定义了一个客户端employee实体类,然后将其传给服务器端WebService的某个方法。ComplexType 是WebService 的类名,ServerMethod是服务器端方法,onServerMethodSucceeded是客户端回调方法,作用是处理服务器方法结束之后的客户端事件,然后在这个事件中就能发现客户端之前定义的数据发生了变化
客户端在执行doubleSalary之后,发给服务器的RequestBody其实是下面的字符串:
{"employee":{"FirstName":"X","LastName":"PP","Salary":1000}}
而服务器响应回给客户端的数据其实是一段JSON字符串:
{"d":{"__type":"Employee","FirstName":"X","LastName":"PP","Salary":2000,"FullName":"X PP"}}
需要注意的是这里虽然是客户端调用服务器端的WebService,但并不是通过SOAP而是JSON来传送数据的。
相关文档:
//详细介绍asp.net获取日期时间的各种格式的函数
DateTime.Now.ToLocalTime().ToString(); // 2009-9-5 20:12:12
//获取日期
DateTime.Now.ToLongDateString().ToString(); // 2009年9月5日
......
网上找到的一个办法,也可以解决 用回车键代替提交按钮时,用户常按回车(非常快速的点回车)导致重复提交的情况:
public class SubmitOncePage : System.Web.UI.Page
{
private string _strSessionKey;
&n ......
//压缩
protected void btnY_Click(object sender, EventArgs e)
{
string rar;
RegistryKey reg;
string args;
ProcessStartInfo procStart;
Process process;
try
{
reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRAR.exe\Shell\Open\Command"); ......
1、使用值类型的ToString方法
在连接字符串时,经常使用"+"号直接将数字添加到字符串中。这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值 ......
【相对路径】
Request.ApplicationPath
/src
Path.GetDirectoryName(HttpContext.Current.Request.RawUrl )
\\src\\Xiaoshe
Context.Request.Path
/src/Xiaoshe/Xiaoshe_New.aspx
Context.Request.CurrentExecutionFilePath
/src/Xiaoshe/Xiaoshe_New.aspx
Context.Request.FilePath
/src/Xiaoshe/Xiaoshe ......