serializexmlclass.aspx

来自「asp.net技术内幕的书配源码」· ASPX 代码 · 共 78 行

ASPX
78
字号
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Serialization" %>

<Script runat="Server">

Public Class ShoppingCart
  Public Username As String
  Public CreditCardNumber As String
  Public CartItems() As CartItem
End Class

Public Class CartItem
  Public ProductName As String
  Public ProductPrice As Decimal
End Class

Sub Button_Click( s As Object, e As EventArgs )
  Dim objShoppingCart As ShoppingCart
  Dim colCartItems As ArrayList
  Dim objCartItem As CartItem
  Dim objItem As ListItem
  Dim objStreamWriter As StreamWriter
  Dim objXMLSerializer As XMLSerializer
  
  ' Create the Shopping Cart
  objShoppingCart = New ShoppingCart
  objShoppingCart.Username = txtUsername.Text
  objShoppingCart.CreditCardNumber = txtCCnumber.Text
  colCartItems = New ArrayList
  For Each objItem in lstCart.Items
    objCartItem = New CartItem
    objCartItem.ProductName = objItem.Text
    objCartItem.ProductPrice = objItem.Value
    colCartItems.Add( objCartItem )
  Next
  objShoppingCart.CartItems = colCartItems.ToArray( GetType( CartItem ) )

  ' Save to XML File
  objStreamWriter = File.CreateText( MapPath( "ShoppingCart.xml" ) )
  objXMLSerializer = New XMLSerializer( GetType( ShoppingCart ) )
  objXMLSerializer.Serialize( objStreamWriter, objShoppingCart )
  objStreamWriter.Close
End Sub
</Script>

<html>
<head><title>SerializeXMLClass.aspx</title></head>
<body>
<form runat="Server">

Username:
<br><asp:TextBox 
  id="txtUsername" 
  runat="Server" />
<p>
Credit Card Number:
<br><asp:TextBox 
  id="txtCCnumber" 
  runat="Server" />
<p>
<asp:ListBox
  id="lstCart"
  Runat="Server" >
<asp:ListItem Text="Bread" Value="12.34" />
<asp:ListItem Text="Milk" Value="1.99" />
<asp:ListItem Text="Beer" Value="19" />
</asp:ListBox>
<p>
<asp:Button 
  Text="Save!" 
  OnClick="Button_Click" 
  Runat="Server" />

</form>
</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?