私はAsp.Net MVCとEdmxデータベースを使用してウェブサイトを開発しました。私はこのウェブサイトをazureに公開しました。私のデータベースもazureにあります。そのシートをアップロードするたびにTimeoutエラーが出るので、私は何をすべきですか?ここでEdmxでタイムアウト500エラー
コンストラクタで当初、私は任意のコマンドのタイムアウトを使用していませんでしたが、いくつかの研究を行った後、私はこれを使用していpublic ProfessionalServicesEntities()
: base("name=ProfessionalServicesEntities")
{
this.Database.CommandTimeout = 10000;
//this.Database.CommandTimeout = 0; //I tried this too.
//((IObjectContextAdapter)this).ObjectContext.CommandTimeout = 3600;
}
は 関数のコードは次のとおりです。 -
public void SaveEquipments(IEnumerable<EquipSampleEntity> collection)
{
using (ProfessionalServicesEntities db = new ProfessionalServicesEntities())
{
string modelXml = XmlSerialization.ListToXml(collection.Where(x=>x.Type == Model).ToList());
string accessoryXml = XmlSerialization.ListToXml(collection.Where(x => x.Type == Accessory).ToList());
db.ImportEquipmentFile(modelXml, accessoryXml);
}
}
ここはSPのコンテキストファイルのコードです: -
public virtual int ImportEquipmentFile(string modelXml, string accessoryXml)
{
var modelXmlParameter = modelXml != null ?
new ObjectParameter("ModelXml", modelXml) :
new ObjectParameter("ModelXml", typeof(string));
var accessoryXmlParameter = accessoryXml != null ?
new ObjectParameter("AccessoryXml", accessoryXml) :
new ObjectParameter("AccessoryXml", typeof(string));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction("ImportEquipmentFile", modelXmlParameter, accessoryXmlParameter);
}
方法@jamiedanq – jamiedanq
を処理するための指定された時間を増やしますか? – Abhay
ファイルのアップロード、使用しているweb.config&データコンテキスト(存在する場合)のコードを表示できますか?タイムアウトに達するまでに何回経過したか?また、あなたが 'ObjectContext.CommandTimeout'にある値を割り当てられているかどうかを知りたいと思います。 –