0

VB에서 XML 리터럴에 대해 배우려고합니다. 다음 컴파일 콘솔 응용 프로그램 템플릿을 기반으로하고 오류없이 실행 "학습"프로젝트에서 (그리고 추가 특별한 수입 문이나 참조없이) : 아직VB.Net의 System.Xml.Linq.XDocument에 대한 선언 오류가 발생했습니다.

Module Module1 
Sub Main() 
    Dim db As New AdventureWorksDataContext 
    Dim stores = <?xml version="1.0"?> 
       <stores> 
        <%= From vStoreWithDemographics In db.vStoreWithDemographics _ 
         Select <store> 
            <ID> 
             <%= vStoreWithDemographics.BusinessEntityID %> 
            </ID> 
            <Name> 
             <%= vStoreWithDemographics.Name %> 
            </Name> 
            <AnnualSales> 
             <%= vStoreWithDemographics.AnnualSales %> 
            </AnnualSales> 
            <BankName> 
             <%= vStoreWithDemographics.BankName %> 
            </BankName> 
            <SquareFeet> 
             <%= vStoreWithDemographics.SquareFeet %> 
            </SquareFeet> 
            <NumberEmployees> 
             <%= vStoreWithDemographics.NumberEmployees %> 
            </NumberEmployees> 
           </store> 
        %> 
       </stores> 
    stores.Save("c:\stores.xml") 
    Process.Start("c:\stores.xml") 
End Sub 

엔드 모듈

나는 반복 시도 Windows Forms 응용 프로그램을 기반으로하는 새 프로젝트에서와 마찬가지로 지난 두 문장 (모두 "Declaration expected"이라고 말함)에서 오류가 발생합니다. 또한 참고 : 콘솔 응용 프로그램의 참조와 winform에 기본적으로 제공되는 참조 app을 추가하고 System.Data.Linq를 추가하면 오류가 발생하여 2 개의 Imports 문을 추가했지만 여전히 오류가 발생합니다.

Imports System.Diagnostics 
Imports System.Xml.Linq.XDocument 
Public Class Form1 
Dim db As New AdventureWorksDataContext 
Dim stores = <?xml version="1.0"?> 
      <stores> 
       <%= From vStoreWithDemographics In db.vStoreWithDemographics _ 
        Select <store> 
           <ID> 
            <%= vStoreWithDemographics.BusinessEntityID %> 
           </ID> 
           <Name> 
            <%= vStoreWithDemographics.Name %> 
           </Name> 
           <AnnualSales> 
            <%= vStoreWithDemographics.AnnualSales %> 
           </AnnualSales> 
           <BankName> 
            <%= vStoreWithDemographics.BankName %> 
           </BankName> 
           <SquareFeet> 
            <%= vStoreWithDemographics.SquareFeet %> 
           </SquareFeet> 
           <NumberEmployees> 
            <%= vStoreWithDemographics.NumberEmployees %> 
           </NumberEmployees> 
          </store> 
       %> 
      </stores> 
    stores.Save("c:\stores.xml")     'error here 
    Process.Start("c:\stores.xml")     'error here 
End Class 

제가 누락 된 부분을 말씀해주십시오. 고맙습니다.

답변

1

두 번째 코드 블록은 메소드 내부에 없습니다. 그것은 Sub 또는 Function (A)의 내부에 있어야합니다 :

Public Class Form1 
     Public Sub SomeFoo() 
      Dim db As New AdventureWorksDataContext 
      Dim stores = <?xml version="1.0"?> 
          <stores> 
           <%= From vStoreWithDemographics In db.vStoreWithDemographics _ 
            Select <store> 
                <ID> 
                 <%= vStoreWithDemographics.BusinessEntityID %> 
                </ID> 
                <Name> 
                 <%= vStoreWithDemographics.Name %> 
                </Name> 
                <AnnualSales> 
                 <%= vStoreWithDemographics.AnnualSales %> 
                </AnnualSales> 
                <BankName> 
                 <%= vStoreWithDemographics.BankName %> 
                </BankName> 
                <SquareFeet> 
                 <%= vStoreWithDemographics.SquareFeet %> 
                </SquareFeet> 
                <NumberEmployees> 
                 <%= vStoreWithDemographics.NumberEmployees %> 
                </NumberEmployees> 
               </store> 
           %> 
          </stores> 
      stores.Save("c:\stores.xml") 
      Process.Start("c:\stores.xml") 
     End Sub 
End Class 

그리고 응용 프로그램 뭔가 어떤 점에서 SomeFoo를 호출합니다.

관련 문제