一个极其简单的在线C#IDE例子(zz)
2012-01-19 15:12
295 查看
五一时去朋友那, 他问了个小问题, 只要写几十行代码就可以很好的说明问题.可偏偏机子没装VS, 只好做罢.回来后想想, 要是有个在线的C#IDE就好了.于是上网查了下相关的资料, 整出来个简单的在线C#IDE.
做这个,主要要解决两个问题, 一是如果将网页上文本框的代码编译并执行;二是如果将程序运行结果在网页上输出.
第一个问题不难, .NET已经有现成的C#编译类CSharpCodeProvider(或是其它语言的),再使用CompilerParameters类做为编译参数,就可以很容易的实现.
第二个问题, 举最简单情况, 就是将Console.Write方法输出的内容在网页上显示出来.这其实也很好办,只要在编译之前, 在输出语句做一个替换, 将输出的内容存到另一个地方.等运行结束后, 再从那个地方取出来就是了.
代码实现如下: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace VSOnline.Framework
using System;
using System.Reflection;
using Microsoft.CSharp;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace VSOnline.Framework
测试:
using VSOnline.Framework;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Collections.Generic;
using System;
using FastDev.Core;
using System.Linq;
namespace Test
然后只要搬到Web上就可以了, 截图:
完整程序下载 : VSOnline.rar
做这个,主要要解决两个问题, 一是如果将网页上文本框的代码编译并执行;二是如果将程序运行结果在网页上输出.
第一个问题不难, .NET已经有现成的C#编译类CSharpCodeProvider(或是其它语言的),再使用CompilerParameters类做为编译参数,就可以很容易的实现.
第二个问题, 举最简单情况, 就是将Console.Write方法输出的内容在网页上显示出来.这其实也很好办,只要在编译之前, 在输出语句做一个替换, 将输出的内容存到另一个地方.等运行结束后, 再从那个地方取出来就是了.
代码实现如下: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace VSOnline.Framework
using System;
using System.Reflection;
using Microsoft.CSharp;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace VSOnline.Framework
测试:
using VSOnline.Framework;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Collections.Generic;
using System;
using FastDev.Core;
using System.Linq;
namespace Test
然后只要搬到Web上就可以了, 截图:
完整程序下载 : VSOnline.rar
相关文章推荐
- [导入]一个极其简单的在线C#IDE例子
- 一个极其简单的在线C#IDE例子
- 一个极其简单的在线C#IDE例子
- 一个简单的C#在线IDE示例
- C# Remoting的一个简单例子
- 一个最简单的C#事件例子
- C# Remoting的一个简单例子
- c#中子线程控制进度条的一个简单例子
- c#中子线程控制进度条的一个简单例子
- c#中子线程控制进度条的一个简单例子
- 学习javascript的闭包特性用C#来实现一个简单的例子
- Ajax一个极其简单的例子
- c#接口简单易懂的一个例子
- 一个简单的小例子让你明白c#中的委托
- 收了100元辛苦费,写了一个最简单的C#ASP.NET的3层架构例子代码,源码是通过代码生成器生成的【写程序的效率神奇的高】
- 写一个简单的C#反射的例子(附有源码)
- 一个简单例子理解C#的协变和逆变
- c#中子线程控制进度条的一个简单例子
- 一个简单的C#多线程间同步的例子 收藏
- C# Remoting的一个简单例子