我有一个.asmx网络服务,将由第三方客户端调用。
Web服务公开一个类似于以下内容的方法:
int SaveMessages(int a,int b,int c, SomeArray[] somearray)
我需要将所有上述参数保存到数据库中。
但是在保存时我需要在保存到DB之前转换实体SomeArray []中的特定字段,为此我需要检查字段的值,然后从另一个表中获取相应的值,这将具有超过100,000条记录。在prod我害怕服务超时,是否有任何方法使这一步快速更改字段,以便它不会超时
我编写了一个LINQ查询来创建要保存的实体:
ar xyz = from x in somearray
select new
{
a= a,
b=b,
c=c,
d= x.p,
e = GetAlternateValue(x.q) // this will search a table with more than 100,000 records
}
答案 0 :(得分:1)
看起来将为数组中的每个项调用GetAlternateValue
。您可以考虑将完整的阵列发送到数据库,然后在一次调用中进行过滤。