Вот YSOD:
Истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает.
Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.
Сведения об исключении: System.Data.SqlClient.SqlException: истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает.
Ошибка источника:
Во время выполнения текущего веб-запроса было сгенерировано необработанное исключение. Информация о происхождении и местонахождении исключения может быть идентифицирована с помощью приведенной ниже трассировки стека исключений.
Трассировка стека:
[SqlException (0x80131904): истекло время ожидания. Период ожидания истек до завершения операции или сервер не отвечает.]
System.Data.ProviderBase.DbConnectionPool.GetConnection (DbConnection owningObject) +428
System.Data.ProviderBase.DbConnectionFactory.GetConnection (DbConnection owningConnection) +65
System.Data.ProviderBase.DbConnectionClosed.OpenConnection (DbConnection externalConnection, DbConnectionFactory connectionFactory) +117
System.Data.SqlClient.SqlConnection.Open () +122
ECommerce.PMethod.Sql.SqlConns.Open () +78
ECommerce.PMethod.Sql.SqlConns..ctor () +120
ECommerce.login.DatasInfo.Proc.UserCenter.IsLogin (String UserGUID, Int32 UserID) +49
ECommerce.login.Rules.Users.UserLogin.isLogin () +44
Config.isUserLogined () +5
Shopping_Shopping.Page_Load (Отправитель объекта, EventArgs e) +10
System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp, Объект o, Объект t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback (Отправитель объекта, EventArgs e) +35
System.Web.UI.Control.OnLoad (EventArgs e) +99
System.Web.UI.Control.LoadRecursive () +50
System.Web.UI.Page.ProcessRequestMain (логическое значение includeStagesBeforeAsyncPoint, логическое значение includeStagesAfterAsyncPoint) + 627
[TypeInitializationException: инициализатор типа для ECommerce.ERP.DAL.DBConn вызвал исключение.]
ECommerce.ERP.DAL.DBConn.get_ConnString () + 0
[ObjectDefinitionStoreException: фабричный метод 'System.String get_ConnString ()' вызвал исключение.]
Spring.Objects.Factory.Support.SimpleInstantiationStrategy.Instantiate (определение RootObjectDefinition, имя строки, фабрика IObjectFactory, метод MethodInfo factoryMethod, аргументы Object []) +257
Spring.Objects.Factory.Support.ConstructorResolver.InstantiateUsingFactoryMethod (имя строки, определение RootObjectDefinition, аргументы Object []) +624
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.InstantiateUsingFactoryMethod (имя строки, определение RootObjectDefinition, аргументы Object []) +60
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.CreateObjectInstance (String objectName, RootObjectDefinition objectDefinition, Object [] arguments) +56
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.InstantiateObject (имя строки, определение RootObjectDefinition, аргументы Object [], логическое allowEagerCaching, логическое suppressConfigure), + 436
[ObjectCreationException: ошибка, вызванная зависимостью объекта 'styleService', определенного в сборке [ECommerce.Services.Impl, версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null], ресурс [ECommerce.Services.Impl. AppContext.xml] строка 56 ': инициализация объекта завершилась неудачно: фабричный метод' System.String get_ConnString () 'вызвал исключение.
при разрешении «аргумента конструктора с именем promoservice» в «PromotionService», определенное в «сборке [ECommerce.Services.Impl, версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null], ресурс [ECommerce.Services.Impl.AppContext.xml ] строка 31 'при разрешении «аргумента конструктора с именем domainservice» в «PromotionDomainService», определенный в «сборке [ECommerce.Domain, версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null], ресурс [ECommerce.Domain.AppContext.xml] строка 20»
при разрешении «аргумента конструктора с именем promorepos» в «promoRepos», определенного в «сборке» [ECommerce.Data.AdoNet, версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null], ресурс [ECommerce.Data.AdoNet.AppContext.xml ] строка 34 '
при разрешении аргумента конструктора с именем connstr в ECommerce.ERP.DAL.DBConn # 389F399, определенного в сборке [ECommerce.Data.AdoNet, версия = 1.0.0.0, культура = нейтральная, PublicKeyToken = null], ресурс [ECommerce .Data.AdoNet.AppContext.xml] строка 34 ']
Spring.Objects.Factory.Support.ObjectDefinitionValueResolver.ResolveReference (определение IObjectDefinition, имя строки, имя аргумента строки, ссылка RuntimeObjectReference) +394
Spring.Objects.Factory.Support.ObjectDefinitionValueResolver.ResolvePropertyValue (строковое имя, определение IObjectDefinition, строковое аргументName, аргумент объектаValue) +312
Spring.Objects.Factory.Support.ObjectDefinitionValueResolver.ResolveValueIfNeeded (имя строки, определение IObjectDefinition, имя-строки-аргумента, значение-аргумента объекта) +17
Spring.Objects.Factory.Support.ConstructorResolver.ResolveConstructorArguments (определение String objectName, определение RootObjectDefinition, обертка ObjectWrapper, константы ConstructorArgumentValues, решенный параметр ConstructorArgumentValuesValues) +993
Spring.Objects.Factory.Support.ConstructorResolver.AutowireConstructor (String objectName, стержень RootObjectDefinition, ConstructorInfo [] selectedCtors, Object []licitArgs) +171
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.AutowireConstructor (имя строки, определение RootObjectDefinition, cstructorInfo [], операторы [Object]] [): +65
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.CreateObjectInstance (String objectName, RootObjectDefinition objectDefinition, Object [] arguments) +161
Spring.Objects.Factory.Support.AbstractAutowireCapableObjectFactory.InstantiateObject (имя строки, определение RootObjectDefinition, аргументы Object [], логическое allowEagerCaching, логическое suppressConfigure), +636
Spring.Objects.Factory.Support.AbstractObjectFactory.CreateAndCacheSingletonInstance (String objectName, RootObjectDefinition objectDefinition, Object [] arguments) +174
Spring.Objects.Factory.Support.WebObjectFactory.CreateAndCacheSingletonInstance (String objectName, RootObjectDefinition objectDefinition, Object [] arguments) +150
Spring.Objects.Factory.Support.AbstractObjectFactory.GetObjectInternal (имя строки, тип requiredType, аргументы Object [], логическое значение suppressConfigure) +990
Spring.Objects.Factory.Support.AbstractObjectFactory.GetObject (имя строки) +10
Spring.Context.Support.AbstractApplicationContext.GetObject (String name) +20
ECommerce.Common.ServiceLocator.GetService () +334
ECommerce.Mvc.Controllers.StylesController..ctor () + 72
[TargetInvocationException: исключение было сгенерировано целью вызова.]
System.RuntimeTypeHandle.CreateInstance (тип RuntimeType, логический publicOnly, логический noCheck, логический и canBeCached, RuntimeMethodHandle & ctor, логический & bNeedSecurityCheck) +0
System.RuntimeType.CreateInstanceSlow (логический publicOnly, логический fillCache) +86
System.RuntimeType.CreateInstanceImpl (логическое значение publicOnly, логическое значение skipVisibilityChecks, логическое значение fillCache) +230
System.Activator.CreateInstance (тип Type, логический непубличный тип) +67
System.Web.Mvc.DefaultControllerFactory.GetControllerInstance (RequestContext requestContext, Тип controllerType) + 80
[InvalidOperationException: произошла ошибка при попытке создать контроллер типа ECommerce.Mvc.Controllers.StylesController '. Убедитесь, что у контроллера есть открытый конструктор без параметров.]System.Web.Mvc.DefaultControllerFactory.GetControllerInstance (RequestContext requestContext, Тип controllerType) +190
System.Web.Mvc.DefaultControllerFactory.CreateController (RequestContext requestContext, String controllerName) +68
System.Web.Mvc.MvcHandler.ProcessRequestInit (HttpContextBase httpContext, IController & controller, IControllerFactory & factory) +118
System.Web.Mvc.MvcHandler.BeginProcessRequest (HttpContextBase httpContext, обратный вызов AsyncCallback, состояние объекта) +46
System.Web.Mvc.MvcHandler.BeginProcessRequest (HttpContext httpContext, обратный вызов AsyncCallback, состояние объекта) +63
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest (контекст HttpContext, AsyncCallback cb, дополнительные данные объекта) +13
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute () +8677954
System.Web.HttpApplication.ExecuteStep (шаг IExecutionStep, логическое и завершено синхронно) + 155
Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.3082; ASP.NET версия: 2.0.50727.3082
Вопрос: первая трассировка стека не имеет отношения к другим, что случилось? Есть идеи?
Позвольте мне прояснить это:
страница MVC использует пружинную часть, пытающуюся загрузить службу lazy-init, конструктор которой хочет строку подключения через статическое свойство, подобное этому:
<object id="promotionRepos" type="ECommerce.Data.AdoNet.Promotions.PromotionRepos, ECommerce.Data.AdoNet" lazy-init="true">
<constructor-arg name="provider">
<null />
</constructor-arg>
<constructor-arg name="connStr">
<object type="ECommerce.ERP.DAL.DBConn, ECommerce.ERP.DAL" factory-method="get_ConnString" />
</constructor-arg>
<property name="RefreshInterval" value="00:00:10" />
</object>
часть тайм-аута не имеет отношения ко всем остальным. увидеть это в первом исключении: Shopping_Shopping.Page_Load (Отправитель объекта, EventArgs e) +10
это вообще другая страница. А также, ECommerce.PMethod.Sql.SqlConns.Open () использует свою собственную строку подключения, а не загруженную весной, это другой модуль от команды diffrent. И я уверен, что строка подключения верна.
И этот йсод появляется случайно. Иногда нет ничего плохого, а иногда и появляется.
Я думал, что может быть что-то не так с моей базой данных или сетью / брандмауэром, я проверю это позже, но теперь я хочу понять эту хитрую трассировку стека.