2013-01-24 4 views
0

솔루션에 저장된 엑셀 템플릿의 사본 촬영 :나는이 솔루션 구조가

enter image description here

내가이 템플릿의 사본을 다음에 그것의 복사본을 저장하려면를 네트워크 드라이브. 내가 이전에 파일의 복사본을 가지고이 코드를 사용하여 한 System.IO 사용 : 짧은 거기에 내가 전체 경로를 지정하는 데 여전히 템플릿 솔루션 내에 저장되어 있기 때문에

string templateFilePath = @"\\blah\blah\blah\blah\Temp.xlsx"; //<<<< X 
string exportFilePath = @"\\blah\blah\blah\blah\Results.xlsx"; 
File.Copy(templateFilePath, exportFilePath, true); 

가 필요하십니까 또는 것은이를 참조이었다 파일?

답변

1

실행 파일이 실행되는 위치와 관련하여 파일의 전체 경로 또는 상대 경로를 지정해야합니다. 따라서 targetFileName = ". \ template.xlsx를 설정할 수 있습니다.

파일을 가져 오는 또 다른 방법은 파일의 속성에서 빌드 작업을 표시하고이를 임베디드 리소스로 설정하는 것입니다. 다음 코드를 사용하여 스트림을 가져옵니다. 스트림이 도움이 될지 확실하지 않은 경우 확실하지 않음

Assembly asm = Assembly.GetExecutingAssembly(); 
string file = string.Format("{0}.Template.xlsx", asm.GetName().Name); 
var ms = new MemoryStream(); 
Stream fileStream = asm.GetManifestResourceStream(file); 
+0

+1 추가 옵션 – whytheq