admin 管理员组文章数量: 887021
2024年1月13日发(作者:学生信息管理系统结构图)
中MVC从后台掌握器传递数据到前台视图的方式_
需要添加相应的命名空间:
复制代码 代码如下:
using System;
using stics;
using tion;
假如仅是猎取当前方法名,可以用法如下代码:
代码如下:
public static void WriteSysLog(int level, string
content)
{
MethodBase mb = rentMethod();
string systemModule = e;
systemModule += "模块名:" + ng() +
e;
systemModule += "命名空间名:" +
ace + e;
//完全限定名,包括命名空间
systemModule += "类名:" + me
+ e;
systemModule += "方法名:" + ;
ine("LogDate: {0}{1}Level:
{2}{1}systemModule: {3}{1}content: {4}", ,
e, level, systemModule, content);
ine();
}
但一般状况下是猎取此记录日志方法的调用方,因此需要用法下面的代码:(此方法仅为演示)
代码如下:
public static void WriteSysLog(string content)
{
const int level = 1000;
StackTrace ss = new StackTrace(true);
//index:0为本身的方法;1为调用方法;2为其上上层,依次类推
MethodBase mb = me(1).GetMethod();
StackFrame[] sfs = mes();
string systemModule = e;
systemModule += "模块名:" + ng() +
e;
systemModule += "命名空间名:" +
ace + e;
//仅有类名
systemModule += "类名:" + +
e;
systemModule += "方法名:" + ;
ine("LogDate: {0}{1}Level:
{2}{1}systemModule: {3}{1}content: {4}", ,
e, level, systemModule, content);
ine();
}
对于这一点儿,感觉有意思的是Main的调用方
代码如下:
ain._nExecuteAssembly(Assembly
assembly, String[] args)
通过
代码如下:
StackTrace ss = new StackTrace(true);
StackFrame[] sfs = mes();
可以得知.NET程序的执行挨次:
代码如下:
Start()
(ExecutionContext executionContext, ContextCallback callback,
Object state)
rsAssembly()
ain._nExecuteAssembly(Assembly
assembly, String[] args)
然后进入方法Main中。
另外,从 MethodBase 类 还可以猎取许多其他属性,可以自行定位到Base 查看。
用法反射可以遍历获得类的全部属性名,方法名,成员名,其中一个好玩的小例子:通过反射将变量值转为变量名本身。
更多信息请查看IT技术专栏
...
版权声明:本文标题:ASP.NET中MVC从后台掌握器传递数据到前台视图的方式__1 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1705102394h473300.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论