惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

量子位
博客园_首页
罗磊的独立博客
云风的 BLOG
云风的 BLOG
J
Java Code Geeks
Last Week in AI
Last Week in AI
D
DataBreaches.Net
Jina AI
Jina AI
博客园 - Franky
大猫的无限游戏
大猫的无限游戏
Apple Machine Learning Research
Apple Machine Learning Research
V
V2EX
D
Docker
MongoDB | Blog
MongoDB | Blog
B
Blog RSS Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
Engineering at Meta
Engineering at Meta
The Cloudflare Blog
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
人人都是产品经理
人人都是产品经理
H
Help Net Security
T
The Blog of Author Tim Ferriss

博客园 - 红色石头

删除表中多余的重复记录 c#里正则表达式的例子 水晶报表中动态显示图片 Javascript中定义类 - 红色石头 - 博客园 castle实例分析(一) url传递中文的方法 - 红色石头 - 博客园 水晶报表中设定每页显示的行数 服务器控件Table的使用 asp.net2.0中关于ASP.NET 网站管理工具无法连接sql server 数据库的处理 转载一张有趣的图片 动态添加用户控件和服务器控件(二) 动态添加用户控件或服务器控件(一) XML格式的字符串和DataSet之间的相互转换 SQL Server2005关于web服务的配置 在VS2005中用C#写存储过程 控制模版列的文本框在编辑时只读 控制模版列的文本框只能输入数字并且禁止粘贴 利用.net正则表达式化繁为简的一个实例 利用SqlServer2005的新增函数实现更高效的分页存储过程
castle实例分析(二)
红色石头 · 2007-05-30 · via 博客园 - 红色石头

HasMany--表示一对多的关系

Posts 的blogid是blogs表的外键,可以在blog类中设置HasMany属性,使blog类有一系列的Posts

using Castle.ActiveRecord;
 [ActiveRecord("blogs")]
public class Blog : ActiveRecordBase
{
    private int id;
    private string name;
    private IList posts = new ArrayList();
    [PrimaryKey]
    public int Id
    {
        get { return id; }
        set { id = value; }
    }
    [Property]
    public string Name
    {
        get { return name; }
        set { name = value; }
    }
    [HasMany(typeof(Post), Table="Posts", ColumnKey="blogid"),
 Inverse=true, Cascade=ManyRelationCascadeEnum.AllDeleteOrphan)]
    public IList Posts
    {
        get { return posts; }
        set { posts = value; }
    }
}
注意:如果另一边有关联的类(Post类)有BelongsTo关联blog类,可以省略Table和ColumnKey 属性

使用示例:
Blog blog = new Blog();
blog.Name = "hammett's blog";
blog.Create();
Post post = new Post();
post.Title = "First post";
post.Contents = "Hello world";
post.Create();
blog.Posts.Add(post);
blog.Update();