2011-08-04 3 views
0

내 상사가 DotNetNuke's Survey Module을 설정하고 클라이언트에 대해 몇 가지 사항을 변경하도록 요청했습니다. 하지만 제대로 실행하려면 베어 본 코드를 얻는 데 문제가 있습니다! 여기 소스 코드에서 DNN 조사 모듈을 만들 때 문제가 발생했습니다.

내가 지금까지 한 일이다 :

  1. 새로운 VB 웹 응용 프로그램 프로젝트
  2. 을 만든 http://dnnsurvey.codeplex.com/releases/view/65186
  3. 에서 소스 & 설치 폴더를 모두 다운로드 모든 기본 페이지를 툭
  4. VB 웹 응용 프로그램 프로젝트에 조사 소스 코드를 복사 한 정확히 같은 구조
  5. DNN의 설치 폴더와 동일한 설치 폴더를 만드는 배치 스크립트를 만들었습니다 (folder-diff를 실행하고 모든 파일/폴더가 동일하게 확인 됨)
  6. 7- 우편 번호
  7. 을 사용하여 설치 폴더를 압축 해제했습니다.

소스 코드가 완벽하게 컴파일됩니다. 그러나 파일/폴더가 동일하더라도, DNN의 압축 패키지 내 DNN 사이트에서 제대로 작동하고, 내 자신의 압축 된 패키지는이 유명한 오류 메시지와 함께 실패합니다

Error: Survey is currently unavailable. DotNetNuke.Services.Exceptions.ModuleLoadException: Could not load type 'DotNetNuke.Modules.Survey.survey'. ---> System.Web.HttpParseException: Could not load type 'DotNetNuke.Modules.Survey.survey'. ---> System.Web.HttpParseException: Could not load type 'DotNetNuke.Modules.Survey.survey'. ---> System.Web.HttpException: Could not load type 'DotNetNuke.Modules.Survey.survey'. at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly) at System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData) --- End of inner exception stack trace --- at System.Web.UI.TemplateParser.ProcessException(Exception ex) at System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) --- End of inner exception stack trace --- at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseFile(String physicalPath, VirtualPath virtualPath) at System.Web.UI.TemplateParser.ParseInternal() at System.Web.UI.TemplateParser.Parse() at System.Web.Compilation.BaseTemplateBuildProvider.get_CodeCompilerType() at System.Web.Compilation.BuildProvider.GetCompilerTypeFromBuildProvider(BuildProvider buildProvider) at System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders() at System.Web.Compilation.BuildProvidersCompiler.PerformBuild() at System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) at System.Web.UI.TemplateControl.LoadControl(VirtualPath virtualPath) at DotNetNuke.UI.ControlUtilities.LoadControl[T](TemplateControl containerControl, String ControlSrc) at DotNetNuke.UI.Modules.ModuleHost.LoadModuleControl() --- End of inner exception stack trace ---

나는 이미에 대해 질문했습니다 DNN 포럼,하지만 그들은 그것에 대해 많이 말할 필요가 없어 : (그래서, 나는 StackOverflow뿐만 아니라 시도 줄 알았는데.

아무도 어떤 문제가 될 수있는 아이디어가 있습니까? 사전에 대단히 감사합니다!

답변

0

다른 도움이 필요하면 알려주세요. 모든 네임 스페이스 DotNetNuke.Modules.Survey 제거

  1. 가 ASCX, ASCX를 삭제 declaractions :이 내가 수행 한 단계입니다.비주얼 베이직, 고급
  2. 만든 새로운, 비어있는 그 이름과 설문 조사, 설정, 및 EditSurvey에 대한 파일 (하지만 사용하는 대신 "조사"의 "설문 조사")
  3. 각 ASCX 파일에
  4. 복사/붙여 넣기 ASCX 코드
  5. 이 빌드나요 (그리고 DotNetNuke.Modules.Survey에 DotNetNuke.Modules.survey 변경)
  6. 복사/각 ascx.vb 파일에 ascx.vb 코드를 붙여 (이러한 파일의 제거 네임 스페이스 선언)
  7. 빌드가 이번에 100 % 성공 했습니까

기괴한 방법으로 문제를 해결했지만 효과가있었습니다. : 3

0

패키지를 올바르게 만들려면 먼저 dnn 인스턴스에있는 모듈을 설치해야합니다. d 단계 4까지 올바른 일. 4 단계 후, 나는 일반적으로 다음을 수행하십시오

  • 이동 속성을 프로젝트 및 설치의 bin 디렉토리 DNN 부모에게 bin 디렉토리 경로를 가리 키도록
  • 응용 프로그램의 블로그
  • 를 dll을 acecss dotentnuke.dll와 마이크로 소프트의 데이터 참조를 추가합니다 프로젝트를 다시 빌드하십시오.

일단 응용 프로그램을 올바르게 컴파일하면 사용자 정의 할 준비가 된 것입니다.

항상 dnn의 모듈 만들기 마법사를 사용하여 패키지를 만듭니다. 모듈을 포장하고 운반하는 것이 쉽고 오류가없는 방법입니다.

은 내가 내 자신이 하나를 해결 결국

+0

응답 해 주셔서 감사합니다. 그러나 실제로 다른 방식으로 해결했습니다 ... 방금 게시하려고합니다. –

관련 문제