Надо запустить на исполнение строку.

Тема в разделе ".NET", создана пользователем Your_Princess, 6 янв 2008.

Статус темы:
Закрыта.
  1. Your_Princess

    Your_Princess Гость

    У меня есть строка, которая представляет собой код программы. Её надо скомпилить и запустить, чтобы она выдала там какой-нибудь результат или что-то в этом роде.

    я пишу так:

    Код (Text):
    using System;
    using System.Collections.Generic;
    using System.Text;
    using Microsoft.CSharp;
    using System.CodeDom.Compiler;

    namespace CodeProviderTemp
    {
    class Program
    {
    static void Main(string[] args)
    {



    CSharpCodeProvider provider = new CSharpCodeProvider();
    bool compileOk = false;



    if (provider != null)
    {

    // Format the executable file name.
    // Build the output assembly path using the current directory
    // and <source>_cs.exe or <source>_vb.exe.


    CompilerParameters cp = new CompilerParameters();

    // Generate an executable instead of
    // a class library.
    cp.GenerateExecutable = false;


    cp.GenerateInMemory = true;

    // Set whether to treat all warnings as errors.
    cp.TreatWarningsAsErrors = false;


    string source = @"using System;


    public class Class1
    {

    public static string Render()
    {
    return ""My name is Ira\"";
    }
    }";


    // Invoke compilation of the source file.
    CompilerResults cr = provider.CreateCompiler().CompileAssemblyFromSource(cp,
    source);

    if(cr.Errors.Count > 0)
    {
    // Display compilation errors.
    Console.WriteLine("Errors building {0} ",
    "text" );
    foreach(CompilerError ce in cr.Errors)
    {
    Console.WriteLine(" {0}", ce.ToString());
    Console.WriteLine();
    }
    }
    else
    {
    // Display a successful compilation message.
    Console.WriteLine("Source {0} built successfully.",
    "text ");
    }

    // Return the results of the compilation.
    Console.ReadKey();
    }


    }
    }
    }
    а но выдаёт ошибку CS1010 Newline in constant
    И не понятно что я делаю не так :(
     
  2. Pasha

    Pasha Гость

    Для: Your_Princess
    Или убери @ в обявлении source и экранируй кавычки, или убери \ после слова Ira.
     
  3. Your_Princess

    Your_Princess Гость

    Спасибо, всё работает. Ну я и дурёна!
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей