使用 T-SQL 创建 Umbraco 成员

问题描述 投票:0回答:1

我正在尝试使用 SQL Server 存储过程而不是 GUI 创建 Umbraco 成员。

使用 SQL Server Profiler 我可以看到有一个我可以使用的函数:

exec sp_executesql N'INSERT INTO [cmsMember] ([nodeId],[Email],[LoginName],[Password]) VALUES (@0,@1,@2,@3)',
                   N'@0 int,@1 nvarchar(4000),@2 nvarchar(4000),@3 nvarchar(4000)',
                   @0=1052, @1=N'[email protected]', @2=N'Test2',
                   @3=N'HMMB0498bIiVQ+EoO3ywJQ==6TdcRwNTt/MqaxS1O/ZiQ3906Vd3GcVfgiNHGFWBiTw='

除了nodeId不是唯一的。因为成员是链接到节点的。

我已经创建了一个存储过程来创建 Umbraco 用户,它只需要 2 个插入查询。但看来 Umbraco 成员需要 10 个插入。

是否可以通过这种方式创建会员?

sql-server tsql umbraco
1个回答
0
投票

您永远不应该尝试直接连接到 Umbraco 数据库,因为它可能会出现一些意外的问题。每个版本都使数据库更加稳定且不易出错。但为了确保您不会搞砸事情,强烈建议您使用 Umbraco 中的“服务”。这些服务可以注入 Umbraco 中,并可以直接从数据库存储(和检索)。

要使用它们,只需将 IMemberService 注入到您的类中

public class MyClass
{
    private IMemberService _memberService;
    
    public MyClass(IMemberService memberService)
    {
        _memberService = memberService;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.