2010-02-07 3 views
2

내 MVC 응용 프로그램을 참조하는 콘솔 응용 프로그램에서 컨트롤러 작업을 실행해야합니다..net의 다른 응용 프로그램에서 asp mvc Controller 동작을 호출 하시겠습니까?

이유는 단지 새로운 응용 프로그램에 복사 할 수없는 몇 가지 특별한 Action 메서드가 있기 때문입니다. (때문에 제어 할 일들)

그래서 콘솔 응용 프로그램에서 컨트롤러 작업 메서드를 호출 할 수있는 방법이 있는지 물어보고 싶습니까? 컨트롤러에 파일 업로드를 보내려면 어떻게해야합니까?

이것은 파일을 업로드하는 데 사용한 내 ActionResult의 예입니다. 요청 파일을 어떻게 보내야합니까?

답변

0

저는 여러분이 할 수있을 것이라고 확신합니다. 그러나 모든 것을 올바르게 연결하는 데는 약간의 노력이 필요할 것입니다. 컨트롤러 클래스의 인스턴스를 만들고 해당 인스턴스에서 ImageUp 메서드를 호출 할 수 있습니다. Request.Files를 올바르게 설정하려면 원하는 값을 Request.Files에 푸시하기 위해 ControllerContext의 인스턴스를 직접 만들어야합니다.

0

System.Net.WebClient.UploadFile()은 파일을 URL에 업로드 할 수 있습니다. 여러 파일을 업로드하거나, 요청에 다른 비 파일 매개 변수를 가지고 싶었다면

은() 더 나은 솔루션이 ImageUp를 리팩토링하는 것입니다 말했다이 질문에 Upload files with HTTPWebrequest (multipart/form-data)

에 허용 대답을 참조 2 가지 방법으로 - 첫 번째는 HttpRequest에서 파일을 추출하고 두 번째는 그 파일에 대해 작동합니다. 그런 다음 두 번째 방법은 HttpContext없이 콘솔 앱이나 유닛 테스트에서 사용할 수 있습니다.

관련 문제