Asp.net C#页面传参的几种方式

简介: Asp.net C#页面传参的几种方式

         

       在做asp.net的项目中,经常用的一个知识点就是如何在页面之间传值。总结一下,应用过的几个小例子。



一、前台脚本调用后台:

       1、html里调用后台代码,调方法,返回值为string。

1. <!--前台脚本:-->
2. <%=GetUserName()%>


1. //后台代码
2. public string GetUserName()          //注意该方法返回值不能为void,否则执行会报错
3.     {  
4.  string userName="";
5.  //userName="a";
6. return  userName;  
7.     }


       用途:

可以用来在后台拼html页面,返回到前台脚本中。

       例子:

html代码:

1. <div style="margin-top:-130px; z-index:1000;position:relative; height:130px" id="headdiv" runat="server">        
2.  <%=Getpicture()%>
3.  <a  class="center-block" style="text-decoration:none; color:#fff;">
4.    <h5>用户等级</h5>
5.  </a>
6. </div>


             后台代码:

1. public string Getpicture()
2.         {
3. //1.获取用户的id
4.             JCZB.YMGJ.Model.ymgj_user user = (JCZB.YMGJ.Model.ymgj_user)Session["User"];
5. string uid = user.uid.ToString();
6. //根据用户的id获取照片的路径
7. string heading = bll.GetHeadimgByUid(uid);
8.             StringBuilder strDiv = new StringBuilder();
9. if (heading == "")
10.             {
11. //头像不存在
12.                 strDiv.Append("<img style=\"width:78px; height:78px;\" src=\"../../../Admin/Images/mine/login.png\" οnclick=\"javascript:window.location.href='Userinfo.aspx';\" />");
13.             }
14. else
15.             {
16. //头像存在
17.                 strDiv.Append("<img style=\"width:78px; height:78px; border-radius:50%; overflow:hidden;\" src=\" ");
18.                 strDiv.Append(heading);
19.                 strDiv.Append(" \" οnclick=\"javascript:window.location.href='Userinfo.aspx';\" />");
20.             }
21. return strDiv.ToString();
22.         }


       效果展示:

       2、前台js中也可以用此种方式调用后台代码

1. Var name=<%=GetUserName()%>
2. var name=<%=Session["UserName"]%>


       3、html里调用后台代码里的参数:

<%#Eval(UserName)%>


       4、通过id给相应控件赋值:

<asp:Label ID="artist" runat="server"></asp:Label>
this.artist.Text = "艺术家:无" ;



二、后台调用前台(html、js)中的数据:

       1、可以通过控件id获取控件的value值、text值等。

       前台通过js进行了一些处理,得到了一些值,想传到后台,可以考虑这个方案:新建一个隐藏的input标签,把参数放到input标签的value值中,在后台通过input的id获取input的value值,进行操作。


三、特殊方式:

       可以通过把值存入session、cookie、cache等中,直接调用。在项目中用session用的较多。

       

推荐几个总结传值的链接:

       http://www.pc6.com/infoview/Article_43306.html

       http://www.111cn.net/net/net/42641.htm

       http://www.jb51.net/article/18665.htm

       http://www.111cn.net/net/net/45589.htm



相关文章
|
10天前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
|
1月前
|
开发框架 .NET C#
C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式
【10月更文挑战第9天】在 C#/.NET Core 中,有多种方法可以删除字符串的最后一个字符,包括使用 `Substring` 方法、`Remove` 方法、`ToCharArray` 与 `Array.Copy`、`StringBuilder`、正则表达式、循环遍历字符数组以及使用 LINQ 的 `SkipLast` 方法。
|
14天前
|
Java 物联网 编译器
C#一分钟浅谈:.NET Core 与 .NET 5 区别
本文对比了 .NET Core 和 .NET 5,从历史背景、主要区别、常见问题及易错点等方面进行了详细分析。.NET Core 侧重跨平台支持和高性能,而 .NET 5 在此基础上统一了 .NET 生态系统,增加了更多新特性和优化。开发者可根据具体需求选择合适的版本。
39 7
|
10天前
|
人工智能 开发框架 前端开发
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
|
10天前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
9天前
|
人工智能 开发框架 安全
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
|
10天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
10天前
|
程序员 C# 图形学
全面的C#/.NET自学入门指南
全面的C#/.NET自学入门指南
|
1月前
|
JSON C# 开发者
C#语言新特性深度剖析:提升你的.NET开发效率
【10月更文挑战第15天】C#语言凭借其强大的功能和易用性深受开发者喜爱。随着.NET平台的演进,C#不断引入新特性,如C# 7.0的模式匹配和C# 8.0的异步流,显著提升了开发效率和代码可维护性。本文将深入探讨这些新特性,助力开发者在.NET开发中更高效地利用它们。
36 1
|
1月前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
60 8
下一篇
无影云桌面