我有一個文件夾。在那裏我有三個cs文件。如何通過命令提示編譯C#應用程序
Demo.cs
using System;
namespace Demo
{
public class Test
{
public static Entity entity = new Entity();
public static void Main(string[] args)
{
var objectHandler = Activator.CreateInstance(null,
args);
var obj = objectHandler.Unwrap();
entity.GetAnnotation(obj.GetType());
}
}
}
Entity.cs
using System;
namespace Demo
{
public class Entity
{
public void GetAnnotation(Type classname)
{
Attribute[] dataAnnotationlist = Attribute.GetCustomAttributes(propInfo);
foreach (var dataannotationAttribute in dataAnnotationlist)
{
//some operation to get annotation property from Employee.cs class
}
}
}
}
Employee.cs
using System.ComponentModel.DataAnnotations;
namespace Demo
{
public class Employee
{
[Display(Name = "name")]
public string name { get; set; }
}
}
我創建XML文件格式從類文件(Employee.cs)使用反射。 但嘗試運行命令提示符時發生錯誤。它運行在visual studio中。
我想使用命令提示符將「Employee.cs」作爲字符串參數傳遞給Main方法來運行Test.cs,Entity.cs。 現在,我已經通過硬編碼爲,
System.Runtime.Remoting.ObjectHandle objectHandler = Activator.CreateInstance(null, "Demo.Employee");
其工作正常,但如何通過命令傳遞。
發生錯誤是:
Entity.cs(8.29):錯誤CS0234:類型或命名空間名稱 'DataAnnotations' 不存在命名空間 存在 'System.ComponentModel'(你缺少程序集引用)Entity.cs(9,19):錯誤CS0234:類型或命名空間名稱 「對象」 在命名空間「System.Data」(是否缺少一個 集引用不存在的)員工.cs(6,33):錯誤CS0234:名稱空間「System.ComponentModel」中不存在類型或名稱空間名稱'DataAnnotations' (您是否缺少 程序集參考?)
並且它還顯示「DataAnnotations」和「Objects」的錯誤。
我該如何解決這個問題?
你是什麼意思「當試圖運行命令提示符」?你能顯示你使用的命令嗎? – 2014-09-03 05:38:46
System.Data.DataAnnotations命名空間的成員在System.ComponentModel.DataAnnotations.dll程序集中聲明。它是否被引用? – jmcilhinney 2014-09-03 05:41:23
csc /out:Test.exe Test.cs Entity.cs Employee.cs – user3582190 2014-09-03 05:42:14