带有现有数据库 + table 控制器的 Azure 移动服务
Azure Mobile Services with existing database + table controller
我已经使用 Azure 门户创建了 Azure 移动服务并选择了一个现有数据库。
现在我有几个问题:
- 每当我 运行 应用程序时,数据库都会被清除,因为 ClearDatabaseSchemaIfModelChanges 已在 [= 中为数据库初始化程序配置17=]WebApiConfig。我可以对 Entity Framework 使用数据库优先方法吗?
- 我现有的数据库的默认模式是 dbo 但它会为所有 table 创建一个新模式,与服务名称。如何克服这种情况?
- 最后,TableController 与 table 紧密绑定。但在我的情况下,输出要求有点复杂,因为我需要来自多个 table 的数据使用相互连接。而且我还想在给出 return 结果之前添加一些逻辑。
- 并且紧密绑定 table 还需要一些公共列,例如 CreatedAt、UpdatedAt、Id、Deleted,因为它继承自 EntityData class。但是在我现有的 table 中,没有列。
帮帮我!!
您可以执行以下操作:
1) 为您的操作创建自定义 API(与 HTTP 动词和 table 没有紧密联系)
2) 手动操作数据库 - 它只是一个 SQL Azure 数据库,可以通过 SQL Servre Management Studio、Visual Studio 或查询进行管理。
所以,很快,如果您需要灵活地使用数据库来执行您需要的操作,您可以这样做,但移动服务是一项服务,因此存在一些限制。
希望对您有所帮助。如果不是,请详细说明问题。
首先,您应该使用 Azure 移动应用程序而不是 Azure 移动服务。
您可以按照 Alexandr 提到的进行操作,或者您可以通过扩展现有表以添加所需的列(尤其是如果您想要同步)来坚持使用移动应用程序。
TableControllers 只是普通的 WebAPI 控制器,您当然可以扩展它。
查看此 link 以获得有关如何重用现有数据库的更多指导步骤。
我已经使用 Azure 门户创建了 Azure 移动服务并选择了一个现有数据库。
现在我有几个问题:
- 每当我 运行 应用程序时,数据库都会被清除,因为 ClearDatabaseSchemaIfModelChanges 已在 [= 中为数据库初始化程序配置17=]WebApiConfig。我可以对 Entity Framework 使用数据库优先方法吗?
- 我现有的数据库的默认模式是 dbo 但它会为所有 table 创建一个新模式,与服务名称。如何克服这种情况?
- 最后,TableController 与 table 紧密绑定。但在我的情况下,输出要求有点复杂,因为我需要来自多个 table 的数据使用相互连接。而且我还想在给出 return 结果之前添加一些逻辑。
- 并且紧密绑定 table 还需要一些公共列,例如 CreatedAt、UpdatedAt、Id、Deleted,因为它继承自 EntityData class。但是在我现有的 table 中,没有列。
帮帮我!!
您可以执行以下操作:
1) 为您的操作创建自定义 API(与 HTTP 动词和 table 没有紧密联系)
2) 手动操作数据库 - 它只是一个 SQL Azure 数据库,可以通过 SQL Servre Management Studio、Visual Studio 或查询进行管理。 所以,很快,如果您需要灵活地使用数据库来执行您需要的操作,您可以这样做,但移动服务是一项服务,因此存在一些限制。
希望对您有所帮助。如果不是,请详细说明问题。
首先,您应该使用 Azure 移动应用程序而不是 Azure 移动服务。
您可以按照 Alexandr 提到的进行操作,或者您可以通过扩展现有表以添加所需的列(尤其是如果您想要同步)来坚持使用移动应用程序。
TableControllers 只是普通的 WebAPI 控制器,您当然可以扩展它。
查看此 link 以获得有关如何重用现有数据库的更多指导步骤。