在SQL Server和&amp ;;中使用模式名称。 ServiceStack.OrmLite

时间:2012-12-19 04:36:11

标签: sql-server ormlite-servicestack

任何人都知道如何应用正确的Alias属性来查询具有模式名称的表?

我有一张名为accounts.register的表格。我尝试使用[Alias("accounts.register")]作为Register类的类装饰器属性,但这不起作用。

如果我将架构更改为dbo,那么我可以删除别名,一切正常。不幸的是,我有一个包含许多模式的遗留系统,所以我需要这个工作。

1 个答案:

答案 0 :(得分:21)

好的,我明白了。与Alias属性一起是Schema属性。前者位于ServiceStack.DataAnnotations命名空间中,但后者位于ServiceStack.OrmLite命名空间中。这是一个映射字段field1&的例子。 field2来自/来自myschema.mytable:

using System;
using ServiceStack.OrmLite;
using ServiceStack.DataAnnotations;

[Schema("myschema")]
[Alias("mytable")]
public class MyEntity
{
    [PrimaryKey]
    [AutoIncrement]
    public long Id { get; set; }

    [Alias("field1")]
    public string SomeField1 { get; set; }

    [Alias("field1")]
    public string SomeField2 { get; set; }
}