2014-01-20 4 views
1

DNN 버전을 업그레이드하는 중 ... 작은 장애물이 있습니다.DotNetNuke 7.0.2 - FileID 및 PortalID가 포함 된 FileManager.GetFile을 사용하십시오

오래 새로운 방법을 사용하여 문제가 있지만

Dim objFileController As New FileController 
Dim objImageInfo As DotNetNuke.Services.FileSystem.FileInfo = objFileController.GetFileById(myFileId, myPortalId) 

새로운 시도 7.0.2

Dim objFileController As FileManager 
Dim objImageInfo As DotNetNuke.Services.FileSystem.IFileInfo = objFileController.GetFile(myFileId) 

부부와 DNN 5.4에 대한 코드를 사용되지 않는 ...

1) 아무튼 포털 ID를 지정하지 마십시오. 우리는 여러 개의 서로 다른 포털을 가지고 있으며 특정 포털 만 필터링 할 수 있어야합니다. PortalID를 지정할 수있는 다른 오버로드가 있지만 FileID를 지정할 수 없습니다.

2) 값을 할당하기 전에 objFileController가 사용되었다는 경고가 나타납니다. 그러나 "Dim __ as New FileManager"를 입력하면 FileManager의 '친구'컨텍스트로 인해 컴파일 오류가 발생합니다.


* 편집 *

내가 FileManager.Instance.GetFile (FileID에) 약간의 참조를보고 있어요. . . 인스턴스가 현재 실행중인 사이트의 현재 포털을 참조합니까? 그렇다면 FileID를 전달하는 것만으로도 사용할 수 있습니다.

답변

3
  1. 파일은 하나의 포털에서만 사용할 수 있으므로 파일 ID가 있으면 파일을 포털 ID로 지정할 필요가 없습니다. 확인하려는 경우 IFileInfo 객체의 PortalId 속성을 확인할 수 있습니다.
  2. FileManager에 공개 된 public 생성자가 없지만 정적 (Instance) 메서드를 사용하여 파일 관리자의 현재 인스턴스 (포털과 관련 없음)를 가져옵니다.
+0

그래, 도움을 주셔서 감사합니다! – adam