2011-01-29 4 views
0

제공된 요구 사항에 따라 코드 을 자동으로 생성하는 C#으로 데스크톱 응용 프로그램을 디자인하고 있습니다.동적으로 생성 된 코드의 구문을 확인하십시오. #

이제 생성 된 코드 구문을 확인하고 싶습니다. 초기 단계에서는 시스템에 몇 가지 가능성을 제공 할 수 있습니다. 에 대해 시스템에 먹이를주기보다는 내가 할 수있는 일이 있습니까?

감사합니다.

+2

안녕하세요. 오버플로를 환영합니다. 미리 서식이 지정된 텍스트 이외에는 'pre'태그를 사용하지 마십시오. 또한 "시스템"이 무엇인지, 그리고 "시스템에 먹이주기"에 대해 무엇을 의미하는지 알려줄 필요가 있습니다. –

+0

안녕하세요, 제 문제는 주어진 코드의 구문을 확인하는 것입니다. 이를 위해서 가능한 모든 구문에 대해 몇 가지 규칙을 작성할 수 있어야합니다. 사용할 수있는 다른 방법이 없으므로 구문 검사의 두통을 건너 뛸 수 있습니다. – Prakash

답변

5

코드를 으로 생성하면 코드가이되므로 구문 적으로 올바른지 확인하는 가장 좋은 방법은 구문 적으로 올바른 코드를 생성하는 것입니다.

그렇지 않으면 사용자 지정 C# 파서 및 의미 분석기 ("하프 컴파일러")를 만드는 것 외에도 .NET 프레임 워크의 일부인 명령 줄 C# 컴파일러를 호출하고 텍스트 출력을 분석하는 것을 고려할 수 있습니다.

MSDN에서 명령 줄 C# 컴파일러 사용법 및 출력은 here입니다. 코드에서 새 프로세스를 시작하는 방법은 Process.Start을보십시오.

+0

고맙습니다. 내가 코드 또는 명령 줄 C# 컴파일러의 사용법을 찾을 수있는 포스트 또는 웹 사이트로 안내해 주시겠습니까? – Prakash

+0

@Prakash 관련 리소스를 알려줄 답변을 업데이트했습니다. –

+1

오케이, 그리고 거기에 큰 도움이 남자. 감사. – Prakash

1

생성 된 코드의 구문을 검사하는 가장 쉬운 방법은 컴파일하는 것입니다. 컴파일러가 이것을 처리하도록하십시오.

생성 한 것이므로 제대로 생성되면 디자인이 훌륭하게 완료된 것이 좋습니다.

+0

내가 생성 한 코드를 사용자가 수정할 수 있도록하려면 ..? 그리고 프로젝트가 실행되는 동안 컴파일하는 방법 ?? – Prakash

+1

@Prakash : CodeDom을 사용하면 런타임에 사용자 시스템에서 즉시 코드를 컴파일 할 수 있습니다. 참조 : http://msdn.microsoft.com/en-us/library/y2k85ax6.aspx –

0

명령 줄 C# 컴파일러 인 csc.exe를 실행하고 출력 된 내용을 확인하십시오. 구문은 "csc Desktop \ MyProgram.cs"입니다. .dll의 경우 구문은 "csc.exe/target : library Desktop \ MyProgram.cs"입니다. csc.exe 실행 파일은 일반적으로 Windows \ Microsoft.NET \ Framework \\ csc.exe에 있습니다.

+0

감사합니다 ... – Prakash

+0

당신을 환영합니다! –

관련 문제