Я использую следующий код для компиляции и запуска моей Razor с моделью:
Line 1: string RazorSource = {Source Code of The Razor};
Line 2: List<CustomObjectClass> lstCustomObject = {Initialize the custom list of object}
Line 3:
Line 4: string Templatekey = "RazorTemplate" + DateTime.Now.ToString("dd_MM_yyyy_hh_mm_ss_ffff");
Line 5: RazorEngine.Engine.Razor.RunCompile(RazorSource, Templatekey, typeof(CustomObjectClass), lstCustomObject );
функция RunCompile () в строке 5 внутренне использует следующий exe:
D:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe
У меня есть несколько приложений с вышеуказанным кодом на одном компьютере. Когда все приложение выполняет вышеуказанный код одновременно. Я получаю следующую ошибку:
Message: Timed out waiting for a program to execute. The command being executed was "D:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe" /noconfig /fullpaths @"D:\local\Temp\RazorEngine_nj1fq2x5.yqd\neb5x2xf.cmdline".
Если одно приложение использует этот exe-файл, другому придется подождать, и они получат ошибку через определенное время.
Мой план - поместить этот exe-файл в локальную папку моего приложения и использовать его оттуда.
Но я не могу найти какой-либо способ, которым я могу указать собственный путь к этому файлу в моем коде c #.
Может кто-нибудь помочь мне с этим вопросом? Пожалуйста, предложите, если есть какие-либо другие решения.