<AnotherRequest>
<Header xmlns:v1="http://site.com">
<v2:Sender />
<v2:Reciever />
</Header>
</AnotherRequest>
static class PropNames
{
public const string Name = "Name";
public const string Weight = "Weight"
// ...
}
...
obj.GetValue(PropNames.Weight)
public class AppRoleProvider : RoleProvider { ... }
public class MyAuthorizeAttribute : AuthorizeAttribute { ... }
[MyAuthorize(Roles = "Admin, SimpleUser")]
public class MyMiddleware
{
private readonly RequestDelegate next;
public MyMiddleware(RequestDelegate next)
{
this.next = next;
}
public async Task Invoke(HttpContext context)
{
this.BeginInvoke(context);
await this.next.Invoke(context);
this.EndInvoke(context);
}
private void BeginInvoke(HttpContext context)
{
// Выполняется до обработки контроллера
// Здесь изучаем context, смотрим, что в POST запросе прилетает (если вообще прилетает)
}
private void EndInvoke(HttpContext context)
{
// Выполняется после отработки контроллера
}
}
public class Startup
{
public void Configure(IApplicationBuilder app)
{
// ...
app.UseMiddleware<MyMiddleware>();
// ...
}
}
double CalcVolume()
{
(double length, double width, double height) =
MyDataProvider.GetValuesFor(myID, new string[] {"length", "width", "height"});
return length * width * height;
}
Вам нужна вот эта перегрузка для Serialize
Вот тут есть пример:
https://docs.microsoft.com/ru-ru/dotnet/api/system...
Используйте разные экземпляры XmlSerializerNamespaces