2014-09-17 3 views
0

내 최종 학위 프로젝트를 곧 시작할 예정이며 ASP.NET C# 프런트 엔드와 SOAP (또는 REST, 아직 완전히 결정되지 않은) 웹 서비스 백엔드로 웹 응용 프로그램을 만드는 것을 목표로합니다. . 필자는 MacBook에서 Microsoft 프레임 워크 인 ASP.NET과 Mac OS에서 사용할 수없는 Visual Studio의 문제를 제기 할 것이므로 Mono 프레임 워크와 해당 IDE 인 Xamarin Studio를 살펴 보았습니다.VMM의 Xamarin Studio 또는 Visual Studio?

아주 기본적인 SOAP 웹 서비스를 만들었습니다. here을 glassfish에 배포하고 wsdl로 이동할 수 있습니다. Xamarin Studio에서 웹 서비스를 사용하려고 할 때 문제가 발생하기 때문에 프록시를 올바르게 설정할 수 있으며 add 웹 메서드 호출 결과를 표시해야하는 매우 간단한 페이지를 만들었습니다. 마크 업 :

<%@ Page Language="C#" Inherits="TryItOutNetApplication.Default" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head runat="server"> 
    <title>Default</title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <asp:Button id="button1" runat="server" Text="Click me!" OnClick="button1Clicked" /> 
     Hey, the result of 1 + 2 is: 
     <asp:Label id="label1" runat="server" /> 
    </form> 
</body> 
</html> 

코드 숨김

namespace TryItOutNetApplication 
{ 
    using System; 
    using System.Web; 
    using System.Web.UI; 
    using localhost; 

    public partial class Default : System.Web.UI.Page 
    { 
     private FYPTestWebService ws; 

     protected void Page_Init(object sender, EventArgs e) 
     { 
      ws = new localhost.FYPTestWebService(); 
     } 

     protected void Page_Load(object sender, EventArgs e) 
     { 
      int i = ws.add(1,2); 
      label1.Text = i.ToString(); 
     } 

     public void button1Clicked (object sender, EventArgs args) 
     { 
      button1.Text = "You clicked me"; 
     } 
    } 
} 

그때 내가하려고 할 때 다음과 같은 오류가 발생하고 응용 프로그램을 실행합니다 내가 찾을 수 없어

Application Exception 
System.Net.Sockets.SocketException 
Connection reset by peer 

Description: HTTP 500.Error processing request. 
Details: Non-web exception. Exception origin (name of application or object): System. 
Exception stack trace: 
at System.Net.Sockets.Socket.EndReceive (IAsyncResult result) [0x0002d] in /Volumes/build-root-ramdisk/mono-3.4.0/mcs/class/System/System.Net.Sockets/Socket_2_1.cs:1816 
at System.Net.Sockets.NetworkStream.EndRead (IAsyncResult ar) [0x0002f] in /Volumes/build-root-ramdisk/mono-3.4.0/mcs/class/System/System.Net.Sockets/NetworkStream.cs:32 

을 Xamarin Studio에 대한 도움은 Visual Studio와 비교할 때 일반적으로 매우 끔찍한 것 같습니다.

내 질문

가) 난 그냥 내 위의 코드/설정에 바보 같은 일을하고있다?

b) Mono/Xamarin Studio를 스크랩하고 VirtualBox를 사용하여 Visual Studio를 설치하고 대신 사용해야합니까?

+0

모바일이 필요하지 않은 경우 Xamarin을 사용해야하는 이유는 MonoDevelop입니다. http://monodevelop.com/ – Alexan

+0

MonoDevelop에 대해 처음 들어간 곳이 바로 여기이지만 Mac OSX 다운로드 링크를 선택하면 Xamarin dmg –

+0

을 다운로드합니다. Xamarin은 Xamarin Studio로 MonoDevelop 4.0 버전을 새로 출시했습니다. – Alexan

답변

0

개인적으로 저는 Mac에서 가상 머신에 Visual Studio를 설치하는 것이 좋습니다. 적어도 내게는 훨씬 더 의미가 있습니다.

1

요점은 다음과 같습니다. 응용 프로그램은 Windows 서버 또는 Linux 서버 (즉, .NET 프레임 워크 또는 Mono 프레임 워크)에 있어야합니다.

하나의 프레임 워크에서 개발하고 다른 프레임 워크로 전개 할 수있는 것은 아니지만, 마침내 실행해야하는 프레임 워크와 동일한 프레임 워크에서 개발할 경우 놀라움은 적습니다!

또한 Visual Studio 및 Xamarin/Monodevelop에서 같은 프로젝트로 작업 할 수 있습니다 (솔루션 파일 덮어 쓰기 전투 중 조금은 ...) .

+0

아직 웹 서버로의 배포가 내 프로젝트의 범위 내에 있는지 여부를 결정하지 못했습니다.저는 .NET, 웹 서비스, 응용 프로그램 서버, 연속 통합 서버 및 통합 테스트와 같은 과정의 일부로 가르치지 않은 기술을 사용하고 있다는 사실에 더 중점을 두었습니다. –

+0

그 질문과 관련이 없지만 (물론 선택할 수 있다면) Asp.Net을 잊어 버리고 Asp.MVC – DaniCE

0

안녕하세요 당신은 Visual Studio 2013에서 직접 개발하는 것을 고려해야합니다. VMWare Fusion을 사용하는 챔피언처럼 작동해야합니다. Xamarin iOS Build Host라는 시뮬레이터를 연결하는 브리지가 있습니다. 연결되면 코드를 작성할 준비가됩니다!

관련 문제