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

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

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

最佳答案

好的,我想通了。与 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; }
}

关于sql-server - 在 SQL Server 和 ServiceStack.OrmLite 中使用架构名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13945563/

10-16 12:24