C# 动态类型 以及 脚本调用(scriptRunTime)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 动态类型 以及 脚本调用(scriptRunTime)相关的知识,希望对你有一定的参考价值。
在使用中让我感觉 好像 javascript中的 动态类型囧
先看动态类型
class Program { static void Main(string[] args) { var streamReader = OpenFile(@"../../test.txt"); string[] headerLine = streamReader.ReadLine().Split(‘,‘); var retList = new List<dynamic>(); while (streamReader.Peek()>0) { string[] dataline = streamReader.ReadLine().Split(‘,‘); dynamic dynamicEntity = new ExpandoObject(); for (int i = 0; i < headerLine.Length; i++) { ((IDictionary<string,object>)dynamicEntity).Add(headerLine[i],dataline[i]); } retList.Add(dynamicEntity); } foreach (var item in retList) { Console.WriteLine("{0} : {1} : {2}" ,item.Age,item.Name,item.Sex); } Console.ReadLine(); } private static StreamReader OpenFile(string fileName) { if(File.Exists(fileName)) return new StreamReader(fileName); return null; } }
test.txt文件如下 所以动态类型在运行时确定他的成员以及函数,甚至我们可以把一个函数赋值给他,并且调用 是不是很像JavaScript的动态类型呢
Name,Age,Sex
Jackmo,32,nan
Jackmo1,32,nan
Jackmo2,32,nan
Jackmo3,32,nan
ScriptRuntime 目前支持 IronPython IronRuby 以及 JavaScript
还是拿来主义吧 : http://blog.csdn.net/fcc_ecjtu/article/details/6804808
以上是关于C# 动态类型 以及 脚本调用(scriptRunTime)的主要内容,如果未能解决你的问题,请参考以下文章
在unity3D: c# 怎样调用另外一个c#脚本里面东西?
Unity3D热更新之LuaFramework篇[05]--Lua脚本调用c#以及如何在Lua中使用Dotween