Я хочу использовать gRPC с .NET core 3 в основном веб-приложении asp.net. Как мне сгенерировать необходимый файл .proto из существующего класса C # и объектов модели? Я не хочу переписывать файл .proto, который отражает существующий код, я хочу, чтобы файл .proto генерировался автоматически из объектов класса и модели.
Я вызываю этот метод для регистрации моего класса обслуживания.
builder.MapGrpcService<MyGrpcService>();
public class MyGrpcService
{
public Task<string> ServiceMethod(ModelObject model, ServerCallContext context)
{
return Task.FromResult("It Worked");
}
}
ModelObject
имеет [DataContract]
и [DataMember]
с атрибутами заказа.
Это возможно? Каждый пример, который я вижу онлайн, начинается с .proto
файла. Я уже определил желаемые методы обслуживания в MyGrpcService
классе. Но, может быть, это просто назад к тому, что является стандартным способом ведения дел ...
Нечто подобное старому удаленному взаимодействию .NET было бы идеальным, когда вы могли бы просто запросить интерфейс с удаленной конечной точки, и оно волшебным образом используется gRPC
для связи назад и вперед, но, возможно, это слишком упрощенное представление.