2012-01-31 5 views
2

SharePoint 서버에있는 XSN 템플릿에서 InfoPath 인스턴스 양식을 만드는 솔루션이 필요합니다. this approach을 사용하고 있지만 서버의 임시 디렉터리에서 템플릿 파일을 추출합니다. 우리는 서면 허가를받지 못할 수도 있습니다. 이것에 대한 더 나은 해결책이 있습니까?프로그래밍 방식으로 InfoPath XSN 템플릿에서 InfoPath 양식을 만드는 방법

당신은 그냥 하나로서, 메모리에 템플릿 파일을 추출 할 수 있습니다 하나의 CAB-라이브러리를 변경

답변

5

다음

Minimum C# code to extract from .CAB archives or InfoPath XSN files, in memory

그리고 전화 myCab.ExtractFile("template.xml", out buffer, out bufferLen);

전체 코드가 보일 것이다

private byte[] GetXmlForm(SPDocumentLibrary list) { 
    byte[] data = null; 
    SPFile file = list.ParentWeb.GetFile(list.DocumentTemplateUrl); 


    Stream fs = file.OpenBinaryStream(); 
    try { 
    data = new byte[fs.Length]; 
    fs.Read(data, 0, data.Length); 
    } finally { 
    fs.Close(); 
    } 

    byte[] buffer; 
    int bufferLen; 
    CabExtract cab = new CabExtract(data); 
    cab.ExtractFile("template.xml", out buffer, out bufferLen); 

    return buffer; 
} 
+0

과 같은 형식입니다. 감사합니다. 감사합니다. – Amir

+0

위대한, 그 사이트에 귀하의 새로운보고, 대답은 도움이 유용하다는 것을 나타 내기 위해 질문의 왼쪽에있는 위쪽 화살표를 누르십시오 :) –

+0

고마워 내 친구. – Amir

관련 문제