Entity framework core 是否有一种简单的方法将POCO实体转换为gRPC对象?
嗯,我有一个客户端应用程序,它必须与远程数据库进行通信。我们的想法是: 客户端(使用EF存储库的POCO实体)--->gRPC客户端-->gRPC服务-->存储库(EF和POCO实体) 我的存储库有CRUD操作和另一个业务逻辑。我知道,也许使用DDD更好,并且有一个单独的模型层和另一个存储库层,但在这种情况下,项目开始考虑存储库是主层,具有确保数据库中信息正确保存的逻辑。无论如何,对于这个问题,这并不重要 我的问题是,在gRPC中,我不能使用.NET对象,所以我必须将我的POCO实体转换为gRPC的消息 例如,我有以下POCOs类:Entity framework core 是否有一种简单的方法将POCO实体转换为gRPC对象?,entity-framework-core,grpc,Entity Framework Core,Grpc,嗯,我有一个客户端应用程序,它必须与远程数据库进行通信。我们的想法是: 客户端(使用EF存储库的POCO实体)--->gRPC客户端-->gRPC服务-->存储库(EF和POCO实体) 我的存储库有CRUD操作和另一个业务逻辑。我知道,也许使用DDD更好,并且有一个单独的模型层和另一个存储库层,但在这种情况下,项目开始考虑存储库是主层,具有确保数据库中信息正确保存的逻辑。无论如何,对于这个问题,这并不重要 我的问题是,在gRPC中,我不能使用.NET对象,所以我必须将我的POCO实体转换为gRP
class Order
{
long IDOrder;
long IDClient
Person Client;
}
class Client
{
long IDClient;
string Name;
ICollection<Orders> Orders;
}
客户端类也是如此
这是一项非常手动的工作,而且如果导航属性属于具有其他导航属性的类型,则可能需要大量的工作,因为当我向存储库请求数据时,有时我会请求在2或3个级别中包含导航属性,因此,以这种方式将POCO转换为消息,并将消息转换为POCO,这可能是一项非常艰巨的工作
所以我想知道这是否真的是一条路,或者是否还有其他更好的选择
我在互联网上搜索了一些如何将entity core与gRPC结合使用的示例,但我只找到了一些非常简单的示例,其中他们没有使用带有导航属性的类,只发送一到两条消息,更多的示例是如何将数据从服务发送到客户端,以及如何实现将EF core与gRPC结合使用的解决方案
谢谢
class GrpcOrders
{
static MessageOrder OrderToMessage(Orders paramOrder)
{
//Here I create a message and copy the data from the order to the message
}
static Order MessageToPoco(MessageOrder paramOrder)
{
//Here I create a POCO entitie and copy the data from the message to the order
}
}