2008-11-14 3 views
0

Mono 및 XSP 웹 서버를 사용하는 Windows에서 첫 번째 ASP.NET 웹 페이지 작업을 시도하고 있습니다.Windows 웹 페이지에서 Mono 및 XSP를 사용하는 샘플 웹 페이지

나는이 챕터 example을 팔로우하고 있습니다. 이 예제의 first part은 최신 모노 버전과 매우 잘 작동합니다. 그러나 웹 파트는 올바른 가상 경로가 아닌 다음과 같은 오류

'{경로 이름} \ Index.aspx.cs'로 떨어질 것으로 보인다.

여기에 전체 스택 추적입니다 : 사람이 오류가 무슨 뜻인지 알고 있는지 궁금

System.Web.HttpException: 'C:\Projects\Mono\ASPExample\simpleapp\index.aspx.cs' is not a valid virtual path. 
    at System.Web.HttpRequest.MapPath (System.String virtualPath, System.String baseVirtualDir, Boolean allowCrossAppMapping) [0x00000] 
    at System.Web.HttpRequest.MapPath (System.String virtualPath) [0x00000] 
    at System.Web.Compilation.BuildManager.AddToCache (System.String virtualPath, System.Web.Compilation.BuildProvider bp) [0x00000] 
    at System.Web.Compilation.BuildManager.BuildAssembly (System.Web.VirtualPath virtualPath) [0x00000] 
    at System.Web.Compilation.BuildManager.GetCompiledType (System.String virtualPath) [0x00000] 
    at System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath (System.String virtualPath, System.Type requiredBaseType) [0x00000] 
    at System.Web.UI.PageParser.GetCompiledPageInstance (System.String virtualPath, System.String inputFile, System.Web.HttpContext context) [0x00000] 
    at System.Web.UI.PageHandlerFactory.GetHandler (System.Web.HttpContext context, System.String requestType, System.String url, System.String path) [0x00000] 
    at System.Web.HttpApplication.GetHandler (System.Web.HttpContext context, System.String url, Boolean ignoreContextHandler) [0x00000] 
    at System.Web.HttpApplication.GetHandler (System.Web.HttpContext context, System.String url) [0x00000] 
    at System.Web.HttpApplication+<Pipeline>c__Iterator5.MoveNext() [0x00000] 

. 나는 윈도우 버전을 시험해 본 모노 전문가를 찾고 있다고 생각한다.

답변

0

이봐, 난 물건이 작동하지만 난 행복 해요 해결 방법을 발견 한 "코드 숨김"을 얻을하는 방법을 모르겠어요. 나는 다른 사람들의 이익을 위해 여기에 게시 할 것이라고 생각했다. 기본적으로 코드를 기본 페이지로 이동하면

XSD 명령과 매개 변수를 사용하는 것만으로 효과적입니다.

<%@ Page Language="C#" %> 
<%@ Import Namespace="System.Data" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
    <head> 
    <title>Code behind Arrrrrrrrrrgh</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

    <script runat="server"> 
    private void Page_Load(Object sender, EventArgs e) 
    { 
     DisplayServerDetails(); 
     DisplayRequestDetails(); 

    } 

    private void DisplayServerDetails() 
     { 
     serverName.Text = Environment.MachineName; 
     operatingSystem.Text = Environment.OSVersion.Platform.ToString(); 
     operatingSystemVersion.Text = Environment.OSVersion.Version.ToString(); 
     } 

     private void DisplayRequestDetails() 
     { 
     requestedPage.Text = Request.Url.AbsolutePath; 
     requestIP.Text = Request.UserHostAddress; 
     requestUA.Text = Request.UserAgent; 
     } 

    </script> 

    </head> 

    <body> 
    <form method="post" runat="server"> 
     <table width="450px" border="1px"> 
      <tr> 
       <td colspan="2"><strong>Server Details</strong></td> 
      </tr> 
      <tr> 
       <td>Server Name:</td> 
       <td> 
        <asp:Label id="serverName" runat="server"></asp:Label></td> 
      </tr> 
      <tr> 
       <td>Operating System:</td> 
       <td> 
        <asp:Label id="operatingSystem" runat="server"></asp:Label> 
       </td> 
      </tr> 
      <tr> 
       <td>Operating System Version:</td> 
       <td> 
        <asp:Label id="operatingSystemVersion" runat="server"> 
        </asp:Label> 
       </td> 
      </tr> 
     </table> 
     <br> 
     <table width="450px" border="1px"> 
      <tr> 
       <td colspan="2"><strong>Request Details</strong></td> 
      </tr> 
      <tr> 
       <td>Page Requested:</td> 
       <td> 
        <asp:Label id="requestedPage" runat="server"></asp:Label> 
       </td> 
      </tr> 
      <tr> 
       <td>Request From:</td> 
       <td> 
        <asp:Label id="requestIP" runat="server"></asp:Label> 
       </td> 
      </tr> 
      <tr> 
       <td>User Agent:</td> 
       <td> 
        <asp:Label id="requestUA" runat="server"></asp:Label> 
       </td> 
      </tr> 
     </table> 
     </form> 
    </body> 
1

xsp를 시작하는 데 사용하는 명령 줄을 붙여 넣을 수 있습니까? 당신은 같은 하나의 웹 애플리케이션 뭔가가 정말 필요하지 않습니다 실행하고 문제의 원인이 될 수있는 경우 :

XSP --applications/SimpleWebApp : C : 프로젝트 \ \ 모노 \ ASPExample

\ ASPExample 디렉토리로 가서 xsp를 매개 변수없이 실행하십시오.

0

내가 사용하던 명령이 있었다 :

난 그냥 매개 변수없이 XSP를 실행하고 난 다음과 같은 출력을 얻을 시도
@echo off 
call C:\PROGRA~1\MONO-2~1.1\bin\setmonopath.bat 
xsp --root . --port 8088 --applications /:. 

:

xsp2이 주소를 듣기 : 0.0.0.0 루트 디렉터리 : C : \ Projects \ Mono \ ASPExample 수신 포트 : 8080 (비보안) 수신 서버를 중지하려면 을 반환하십시오.

나는 즉, 이전과 같은 출력을 얻을

http://localhost:8080

에 프로젝트를 검색 할 때 cs 파일이 유효한 가상 경로가 아니라는 신음 소리.

ASPX 페이지의 src 특성이 문제라고 생각합니다. 아마도 Mono의 새 버전에서 업데이트되었을 것입니다. 나는 그것을 조사 할 것이다.

답장을 보내 주셔서 감사합니다.

데이브

0

xsp2 대신 xsp2를 실행 해 보셨습니까?