📄 associateclasses.cs
字号:
using System.Collections.Generic;
using Lephone.Data.Definition;
namespace Lephone.UnitTest.Data.Objects
{
// HasOne
[DbTable("People")]
public class Person : DbObject
{
public string Name = null;
public HasOne<PersonalComputer> PC;
public Person()
{
PC = new HasOne<PersonalComputer>(this, "");
}
}
[DbTable("PCs")]
public class PersonalComputer : DbObject
{
public string Name = null;
[DbColumn("Person_Id")]
public BelongsTo<Person> Owner;
public PersonalComputer()
{
Owner = new BelongsTo<Person>(this);
}
}
// HasMany
[DbTable("Books")]
public class Book : DbObject
{
public string Name = null;
[DbColumn("Category_Id")]
public BelongsTo<Category> CurCategory;
public Book()
{
CurCategory = new BelongsTo<Category>(this);
}
}
[DbTable("Categories")]
public class Category : DbObject
{
public string Name = null;
public HasMany<Book> Books;
public Category()
{
Books = new HasMany<Book>(this, "Id");
}
}
public abstract class Article : DbObjectModel<Article>
{
public abstract string Name { get; set; }
[HasAndBelongsToMany(OrderBy = "Id")]
public abstract IList<Reader> Readers { get; set; }
public Article Init(string Name) { this.Name = Name; return this; }
}
public abstract class Reader : DbObjectModel<Reader>
{
public abstract string Name { get; set; }
[HasAndBelongsToMany(OrderBy = "Id")]
public abstract IList<Article> Articles { get; set; }
public Reader Init(string Name) { this.Name = Name; return this; }
}
public class Article_Reader : IDbObject
{
public long Article_Id;
public long Reader_Id;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -