2013-12-05 3 views
0

Я довольно новичок в ormLite с использованием C#, и я столкнулся с проблемой, когда ormLite создает только столбцы первичного ключа и внешнего ключа, а не столбцы публичных данных любого типа. Любое понимание или направления? Вот фрагмент кода:ORMLite создает только столбцы ID - SQL Server

C# Класс:

public class Person : Entity 
{ 
    [AutoIncrement] 
    public int PersonID { get; set; } 

    [References(typeof(Entity))] 
    public int EntityID { get; set; } 

    public string FirstName; 
    public string Middlename; 
    public string LastName; 

    public DateTime BirthDate; 
    public char Gender; 
    public int Age; 

    public Color EyeColour; 
    public Color HairColour; 

    public Person(string firstName, string lastName, char gender, DateTime? birthDate = null, int? age = null, Color? eyeColor = null, Color? hairColour = null, string middleName = null) 
    { 

    } 
} 

Создано с помощью:

private IDbConnection CreateConnection() 
    { 
     OrmLiteConnectionFactory dbFactory = new OrmLiteConnectionFactory("Server=server;Database=mso;User Id=sa;Password=pw![enter image description here][1];", SqlServerDialect.Provider); 
     IDbConnection dbConnection = dbFactory.Open(); 
     return dbConnection; 
    } 

    public TaskOutcome CreateDBSchema(params Type[] types) 
    { 
     try 
     { 
      IDbConnection db = CreateConnection(); 

      using (var tran = db.BeginTransaction()) 
      { 

       db.CreateTableIfNotExists(types); 

       tran.Commit(); 
      } 
      return new TaskOutcome(new TaskOutcomeType(TaskOutcomeType.TaskResult.Success)); 
     } 
     catch (Exception msg) 
     { 
      return new TaskOutcome(new TaskOutcomeType(TaskOutcomeType.TaskResult.Failure, msg.Message)); 
     } 
    } 

Это то, что структура таблицы выглядит следующим образом:

enter image description here

Это блокируя дальнейшее развитие, поэтому любая помощь очень ценится!

Сэм

Edit: (упаковывает его полезный)

 public string GetData(int value) 
    { 
     ServiceData service = new ServiceData(); 

     // create in order of dependecy 
     Type[] types = new Type[15] { typeof(Entity), typeof(Organization), typeof(Person), typeof(Daycare), typeof(Caregiver), typeof(Child), typeof(Parent), typeof(Doctor), typeof(EmergencyContact), typeof(Contact), typeof(Country), typeof(Province), typeof(City), typeof(Address), typeof(Timesheet) }; 

     TaskOutcome result = service.CreateDBSchema(types); 

     return string.Format("You entered: {0}", result.ToString()); 
    } 

ответ

2

Вы отсутствуете {get ; set;} для других полей.

+1

Как новый, меня много! Я рад, что он разрешен, но я никогда не чувствовал себя более глупым :( – OverMars

+0

* Вам не хватает {get; set;} для других полей. * Это действительно было бы лучше выражено как * вам нужно использовать свойства * not * use ' {get; set;} '* –

Смежные вопросы