2011-09-08 3 views
1

IIS 6이 설치된 Windows 서버 2003에서 웹 사이트를 사용하고 IIS 5를 사용하는 테스트 서버 2003을 사용합니다. 테스트 서버에서 ViewState로 페이지를 테스트했을 때 정상적으로 작동했습니다. 그러나 우리는 IIS 6을 실행하는 다른 서버에서 테스트했습니다. 오류가 발생했습니다. 나는 웹 구성 파일을 비교했다. 기계 키와 뷰 상태의 최대 길이가 있습니다. 나는 며칠을 보내고 아직도 그것을 찾지 못합니다. 누군가 나를 도울 수 있습니다.ViewState 문제

이 오류는 항상 발생하지 않습니다. 그래서 나는 소스 코드가 문제가 아니라고 생각한다. 는 여기에 내가 그것을 테스트 서버가 윈도우의 동일한 버전을 실행 한 경우 더 나은 목적의 역할을 할 수 있다는 말을 너무 명백한 것 같아요

[SerializationException: Member '_name' was not found.] 
    System.Runtime.Serialization.SerializationInfo.GetElement(String name, Type& foundType) +7608149 
    System.Runtime.Serialization.SerializationInfo.GetString(String name) +24 
    SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2..ctor(SerializationInfo info, StreamingContext context) +69 
    PV.Data.Standard.EntityClasses.ClinicEntity..ctor(SerializationInfo info, StreamingContext context) +26 

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
    System.RuntimeMethodHandle._SerializationInvoke(Object target, SignatureStruct& declaringTypeSig, SerializationInfo info, StreamingContext context) +0 
    System.Reflection.RuntimeConstructorInfo.SerializationInvoke(Object target, SerializationInfo info, StreamingContext context) +108 
    System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context) +273 
    System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder) +49 
    System.Runtime.Serialization.ObjectManager.DoFixups() +223 
    System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) +188 
    System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) +203 
    System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream) +12 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +968 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +291 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +392 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +404 
    System.Web.UI.ObjectStateFormatter.DeserializeValue(SerializerBinaryReader reader) +392 
    System.Web.UI.ObjectStateFormatter.Deserialize(Stream inputStream) +135 

[ArgumentException: The serialized data is invalid.] 
    System.Web.UI.ObjectStateFormatter.Deserialize(Stream inputStream) +199 
    System.Web.UI.ObjectStateFormatter.Deserialize(String inputString) +297 
    System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize(String serializedState) +4 
    System.Web.UI.Util.DeserializeWithAssert(IStateFormatter formatter, String serializedState) +37 
    System.Web.UI.HiddenFieldPageStatePersister.Load() +113 

[ViewStateException: Invalid viewstate. 
    Client IP: 10.0.51.92 
    Port: 51267 
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; BRI/1) 
    ViewState: /wEPDwUJODUyMDU5NzIxDxYOHgpQcmFjdGljZVBrKClYU3lzdGVtLkd1aWQsIG1zY29ybGliLCBWZXJzaW9uPTIuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjc3YTVjNTYxOTM0ZTA4OSRlMzE4OTAzNy0xOWY3LWRmMTEtOGQwNC0wMDFlMGI2ZTE4MWEeCENsaW5pY1BrKCsEJGQyYzg3OWI4LTE5ZjctZGYxMS04ZDA0LTAwMWUwYjZlMTgxYR4IUHJhY3RpY2UFBFBDTFAeBkNsaW5pYwUKVy4gUk9CSU5TTx4M..] 

[HttpException (0x80004005): The state information is invalid for this page and might be corrupted.] 
    System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +106 
    System.Web.UI.ViewStateException.ThrowViewStateError(Exception inner, String persistedState) +14 
    System.Web.UI.HiddenFieldPageStatePersister.Load() +217 
    System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +105 
    System.Web.UI.Page.LoadAllState() +43 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6785 
    System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +242 
    System.Web.UI.Page.ProcessRequest() +80 
    System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21 
    System.Web.UI.Page.ProcessRequest(HttpContext context) +49 
    ASP.clinicinfo_aspx.ProcessRequest(HttpContext context) in c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\9ca5f508\2be4cd8e\App_Web_sqt6xlmv.2.cs:0 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75 
+0

다른 데이터베이스? ViewState와 관련없는 것으로 보입니다. – bzlm

+0

코드에서 viewstate로 무엇을하고 있습니까? 나는 헛소리와 무례한 것을 느낍니다. 코드를 전혀 표시 할 수 있습니까? 구성에서 ViewState의 최대 길이를 줄이면 어떻게됩니까? –

+0

최대 lenth를 넣었는지 같은지 ... – keum

답변

0

내 오류이며, 프로덕션 서버 그래서 그건 (... 사용하는 IIS 실제로 한 가지 제안 ...)

그렇지 않으면이 문제를 일으킬 수있는 모든 문제를 조사하지 않고 IIS6에서 IIS5 호환 모드를 사용할 수 있습니다.

  1. R-클릭 IIS 관리자에서
  2. 서비스
  3. 체크 마크
0

SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2 클래스는 회원이 _name 이름 이제까지했던 한 IIS 5 격리 모드 확인란을 당신의 웹 사이트를? 여기에로드 밸런싱이 관련되어 있습니까?

SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2 클래스에 _name_ member, and then the ViewState is being interpreted on a machine where that class does not have a _name '멤버가있는 컴퓨터에서 ViewState가 생성 된 것처럼 보입니다.

+0

_name 멤버가 없으면 항상 오류가 발생해야합니다. 그러나 내 문제는 때로는 발생하고 때로는 발생하지 않는다는 것입니다. – keum

+0

질문을 편집하여이 사실을 포함 시키십시오.'_name' 변수가 없으면 전체 예외를 포함하십시오. –