Да, это неприятность.Есть 2 варианта исправить это;Первое (и самое простое) - использовать способность WCF делиться сборкой контракта между клиентом и сервером.Если вы можете совместно использовать слой DTO, все будет просто.
Во-вторых, добавьте дополнительные маркеры на клиенте, чтобы дать ему подсказку.Это можно сделать с помощью класса partial
, например, в отдельном кодовом файле (не редактируйте сгенерированный файл):
namespace YourNamespace {
[ProtoContract(DataMemberOffset = 1)] /* shift all DataMember orders */
public partial class tbEmployee {}
}
более явная альтернатива:
namespace YourNamespace {
[ProtoPartialMember(1, "EmployeeID")]
[ProtoPartialMember(2, "EmployeeName")]
public partial class tbEmployee {}
}