2016-10-27 4 views
0

CSharpCodeProvider 객체의 CompileAssemblyFromSource 함수에서 궁극적으로 사용할 CompilerParameters 객체에 네임 스페이스를 추가 할 수 있습니까? 그렇지 않다면 네임 스페이스를 포함시킬 방법이 있습니까?CompilerParameters에서 네임 스페이스를 추가하는 방법

+0

문제를 설명하기 위해 몇 가지 샘플 코드를 제공하십시오. – NineBerry

답변

1

출력 어셈블리를 작성하기 위해 입력 한 소스의 네임 스페이스가 모두 표시되어야합니다.

다른 어셈블리의 네임 스페이스는 해당 어셈블리 (다른 어셈블리)를 CompilerParameters.ReferencedAssemblies에 추가 한 후에 만 ​​볼 수 있습니다.

당신은 문서의 예를 가지고 :

https://msdn.microsoft.com/en-us/library/system.codedom.compiler.compilerparameters.referencedassemblies(v=vs.110).aspx

'희망이 도움이됩니다.

+0

답장을 보내 주셔서 감사합니다. 프로젝트에 포함 된 "something.cs"파일 안에 "something"이라는 네임 스페이스가 있다고 가정합니다. CompilerParameters.ReferencedAssemblies.Add (???)에 무엇을 써야합니까? – Adib

+0

글쎄, 당신은 필요가 없습니다. 당신의 무언가 네임 스페이스가 보여야합니다. 내 대답은 완성도를위한 것이 었습니다. 현재 소스에서만 발견 된 네임 스페이스를 언급하고 있는지, 다른 어셈블리에서는 발견하지 못했는지는 확실하지 않았습니다. – YSharp

+0

어떤 이유로 함수가 작동하지 않아서 네임 스페이스가 추가되지 않았다고 생각했습니다. 그러나, 당신이 옳다는 것, 이제는 잘 작동하는 것처럼 보입니다. CompilerParameters에 네임 스페이스를 추가하는 방법을 모색하는데 많은 시간을 절약 해 주셔서 감사합니다. – Adib

관련 문제