http://www.atmarkit.co.jp/fdotnet/dotnettips/101compileinvoke/compileinvoke.html
このサイトのサンプルプログラムが使いたいのですが、
CreateCompiler()でエラーが出てしまいます。
どのように回避すればいいかわかりません。
私の書いているソースです(まる写しですが・・・)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.CSharp;
using System.CodeDom.Compiler;
using System.Reflection;
namespace ClassLibrary1{
public class CompileInvoke {
static string cs = @"
public class CSHello {
public static void Main() {
System.Console.WriteLine(""Hello C# World!"");
}
}";
public static void Main() {
CSharpCodeProvider cscp = new CSharpCodeProvider();
ICodeCompiler cc = cscp.CreateCompiler();
CompilerParameters param = new CompilerParameters();
param.GenerateInMemory = true;
CompilerResults cr = cc.CompileAssemblyFromSource(param, cs);
Assembly asm = cr.CompiledAssembly;
Type type = asm.GetType("CSHello");
MethodInfo mi = type.GetMethod("Main");
mi.Invoke(null, null); // 出力:Hello C# World!"
}
}
コメント(2件)
> どのように回避すればいいかわかりません。
具体的に、何というエラーが出ていますか?
・使用している Visual Studio のバージョン
・使用している .NET Framework のバージョン
・表示されているエラーの内容(エラーメッセージやエラーコード)
と言った情報が無いと、回答する側も原因特定しにくいので、上記のような情報は記載された方が良いでしょう。
結局よく見たら簡単な間違いを犯しているだけでした。
ご回答のとおり、正確で細かなエラーを書こうとしたらまちがいにきづきました。何事も段階を踏まないといけませんね。
もうしわけございませんでした。大変助かりました。