外文翻譯--asp.net技術(shù)_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  英文原文</b></p><p>  ASP.NET Technique</p><p>  1.Building ASP.NET Pages</p><p>  ASP.NET and the .NET Framework</p><p>  ASP.NET is part of Mic

2、rosoft's overall .NET framework, which contains a vast set of programming classes designed to satisfy any conceivable programming need. In the following two sections, you learn how ASP.NET fits within the .NET framew

3、ork, and you learn about the languages you can use in your ASP.NET pages.</p><p>  The .NET Framework Class Library</p><p>  agine that you are Microsoft. Imagine that you have to support multip

4、le programming languages—such as Visual Basic, JScript, and C++. A great deal of the functionality of these programming languages overlaps. For example, for each language, you would have to include methods for accessing

5、the file system, working with databases, and manipulating strings.</p><p>  Furthermore, these languages contain similar programming constructs. Every language, for example, can represent loops and condition

6、als. Even though the syntax of a conditional written in Visual Basic differs from the syntax of a conditional written in C++, the programming function is the same.</p><p>  Finally, most programming language

7、s have similar variable data types. In most languages, you have some means of representing strings and integers, for example. The maximum and minimum size of an integer might depend on the language, but the basic data ty

8、pe is the same.</p><p>  Maintaining all this functionality for multiple languages requires a lot of work. Why keep reinventing the wheel? Wouldn't it be easier to create all this functionality once and

9、use it for every language?</p><p>  The .NET Framework Class Library does exactly that. It consists of a vast set of classes designed to satisfy any conceivable programming need. For example, the .NET framew

10、ork contains classes for handling database access, working with the file system, manipulating text, and generating graphics. In addition, it contains more specialized classes for performing tasks such as working with reg

11、ular expressions and handling network protocols.</p><p>  The .NET framework, furthermore, contains classes that represent all the basic variable data types such as strings, integers, bytes, characters, and

12、arrays.</p><p>  Most importantly, for purposes of this book, the .NET Framework Class Library contains classes for building ASP.NET pages. You need to understand, however, that you can access any of the .NE

13、T framework classes when you are building your ASP.NET pages.</p><p>  Understanding Namespaces</p><p>  As you might guess, the .NET framework is huge. It contains thousands of classes (over 3,

14、400). Fortunately, the classes are not simply jumbled together. The classes of the .NET framework are organized into a hierarchy of namespaces.</p><p>  ASP Classic Note</p><p>  In previous ver

15、sions of Active Server Pages, you had access to only five standard classes (the Response, Request, Session, Application, and Server objects). ASP.NET, in contrast, provides you with access to over 3,400 classes!</p>

16、;<p>  A namespace is a logical grouping of classes. For example, all the classes that relate to working with the file system are gathered together into the System.IO namespace.</p><p>  The namespace

17、s are organized into a hierarchy (a logical tree). At the root of the tree is the System namespace. This namespace contains all the classes for the base data types, such as strings and arrays. It also contains classes fo

18、r working with random numbers and dates and times.</p><p>  You can uniquely identify any class in the .NET framework by using the full namespace of the class. For example, to uniquely refer to the class tha

19、t represents a file system file (the File class), you would use the following:</p><p>  System.IO.File</p><p>  System.IO refers to the namespace, and File refers to the particular class.</p&

20、gt;<p><b>  NOTE</b></p><p>  You can view all the namespaces of the standard classes in the .NET Framework Class Library by viewing the Reference Documentation for the .NET Framework.<

21、/p><p>  Standard ASP.NET Namespaces</p><p>  The classes contained in a select number of namespaces are available in your ASP.NET pages by default. (You must explicitly import other namespaces.) T

22、hese default namespaces contain classes that you use most often in your ASP.NET applications:</p><p>  System— Contains all the base data types and other useful classes such as those related to generating ra

23、ndom numbers and working with dates and times.</p><p>  System.Collections— Contains classes for working with standard collection types such as hash tables, and array lists.</p><p>  System.Coll

24、ections.Specialized— Contains classes that represent specialized collections such as linked lists and string collections.</p><p>  System.Configuration— Contains classes for working with configuration files

25、(Web.config files).</p><p>  System.Text— Contains classes for encoding, decoding, and manipulating the contents of strings.</p><p>  System.Text.RegularExpressions— Contains classes for perform

26、ing regular expression match and replace operations.</p><p>  System.Web— Contains the basic classes for working with the World Wide Web, including classes for representing browser requests and server respon

27、ses.</p><p>  System.Web.Caching— Contains classes used for caching the content of pages and classes for performing custom caching operations.</p><p>  System.Web.Security— Contains classes for

28、implementing authentication and authorization such as Forms and Passport authentication.</p><p>  System.Web.SessionState— Contains classes for implementing session state.</p><p>  System.Web.UI

29、— Contains the basic classes used in building the user interface of ASP.NET pages.</p><p>  System.Web.UI.HTMLControls— Contains the classes for the HTML controls.</p><p>  System.Web.UI.WebCont

30、rols— Contains the classes for the Web controls.</p><p>  .NET Framework -Compatible Languages</p><p>  For purposes of this book, you will write the application logic for your ASP.NET pages usi

31、ng Visual Basic as your programming language. It is the default language for ASP.NET pages. Although you stick to Visual Basic in this book, you also need to understand that you can create ASP.NET pages by using any lang

32、uage that supports the .NET Common Language Runtime. Out of the box, this includes C#, JScript.NET, and the Managed Extensions to C++.</p><p><b>  NOTE</b></p><p>  Dozens of other l

33、anguages created by companies other than Microsoft have been developed to work with the .NET framework. Some examples of these other languages include Python, SmallTalk, Eiffel, and COBOL. This means that you could, if y

34、ou really wanted to, write ASP.NET pages using COBOL.</p><p>  Regardless of the language that you use to develop your ASP.NET pages, you need to understand that ASP.NET pages are compiled before they are ex

35、ecuted. This means that ASP.NET pages can execute very quickly.</p><p>  The first time you request an ASP.NET page, the page is compiled into a .NET class, and the resulting class file is saved beneath a sp

36、ecial directory on your server named Temporary ASP.NET Files. For each and every ASP.NET page, a corresponding class file appears in the Temporary ASP.NET Files directory. Whenever you request the same ASP.NET page in th

37、e future, the corresponding class file is executed.</p><p>  When an ASP.NET page is compiled, it is not compiled directly into machine code. Instead, it is compiled into an intermediate-level language calle

38、d Microsoft Intermediate Language (MSIL). All .NET-compatible languages are compiled into this intermediate language.</p><p>  An ASP.NET page isn't compiled into native machine code until it is actually

39、 requested by a browser. At that point, the class file contained in the Temporary ASP.NET Files directory is compiled with the .NET framework Just in Time (JIT) compiler and executed.</p><p>  The magical as

40、pect of this whole process is that it happens automatically in the background. All you have to do is create a text file with the source code for your ASP.NET page, and the .NET framework handles all the hard work of conv

41、erting it into compiled code for you.</p><p>  ASP CLASSIC NOTE</p><p>  What about VBScript? Before ASP.NET, VBScript was the most popular language for developing Active Server Pages.</p>

42、<p>  ASP.NET does not support VBScript, and this is good news. Visual Basic is a superset of VBScript, which means that Visual Basic has all the functionality of VBScript and more. So, you have a richer set of fu

43、nctions and statements with Visual Basic.</p><p>  Furthermore, unlike VBScript, Visual Basic is a compiled language. This means that if you use Visual Basic to rewrite the same code that you wrote with VBSc

44、ript, you can get better performance.</p><p>  If you have worked only with VBScript and not Visual Basic in the past, don't worry. Since VBScript is so closely related to Visual Basic, you'll find i

45、t easy to make the transition between the two languages.</p><p><b>  NOTE</b></p><p>  Microsoft includes an interesting tool named the IL Disassembler (ILDASM) with the .NET framewo

46、rk. You can use this tool to view the disassembled code for any of the ASP.NET classes in the Temporary ASP.NET Files directory. It lists all the methods and properties of the class and enables you to view the intermedia

47、te-level code.</p><p>  This tool also works with all the ASP.NET controls discussed in this chapter. For example, you can use the IL Disassembler to view the intermediate-level code for the TextBox control

48、(located in a file named System.Web.dll).</p><p>  Introducing ASP.NET Controls</p><p>  ASP.NET controls provide the dynamic and interactive portions of the user interface for your Web applicat

49、ion. The controls render the content that the users of your Web site actually see and interact with. For example, you can use controls to create HTML form elements, interactive calendars, and rotating banner advertisemen

50、ts.</p><p>  ASP.NET controls coexist peacefully with HTML content. Typically, you create the static areas of your Web pages with normal HTML content and create the dynamic or interactive portions with ASP.N

51、ET controls.</p><p>  The best way to understand how ASP.NET controls work in an HTML page is to look at a simple Web Forms Page.</p><p>  Adding Application Logic to an ASP.NET Page</p>

52、<p>  The second building block of an ASP.NET page is the application logic, which is the actual programming code in the page. You add application logic to a page to handle both control and page events.</p>&

53、lt;p>  If a user clicks a Button control within an HTML form, for example, the Button control raises an event (the Click event). Typically, you want to add code to the page that does something in response to this even

54、t. For example, when someone clicks the Button control, you might want to save the form data to a file or database.</p><p>  Controls are not the only things that can raise events. An ASP.NET page itself rai

55、ses several events every time it is requested. For example, whenever you request a page, the page's Load event is triggered. You can add application logic to the page that executes whenever the Load event occurs.<

56、/p><p>  2.Building Forms with Web Server Controls</p><p>  Building Smart Forms</p><p>  You use several of the basic Web controls to represent standard HTML form elements such as rad

57、io buttons, text boxes, and list boxes. You can use these controls in your ASP.NET pages to create the user interface for your Web application. The following sections provide detailed overviews and programming samples fo

58、r each of these Web controls.</p><p>  Controlling Page Navigation</p><p>  In the following sections, you learn how to control how a user moves from one ASP.NET page to another. First, you lear

59、n how to submit an HTML form to another page and retrieve form information. Next, you learn how to use the Redirect() method to automatically transfer a user to a new page. Finally, you learn how to link pages together w

60、ith the HyperLink control.</p><p>  Applying Formatting to Controls</p><p>  In the following sections, you learn how to make more attractive Web forms. First, you look at an overview of the for

61、matting properties common to all Web controls; they are the formatting properties of the base control class. Next, you learn how to apply Cascading Style Sheet styles and classes to Web controls.</p><p>  3.

62、Performing Form Validation with Validation Controls</p><p>  Using Client-side Validation</p><p>  Traditionally, Web developers have faced a tough choice when adding form validation logic to th

63、eir pages. You can add form validation routines to your server-side code, or you can add the validation routines to your client-side code.</p><p>  The advantage of writing validation logic in client-side co

64、de is that you can provide instant feedback to your users. For example, if a user neglects to enter a value in a required form field, you can instantly display an error message without requiring a roundtrip back to the s

65、erver.</p><p>  People really like client-side validation. It looks great and creates a better overall user experience. The problem, however, is that it does not work with all browsers. Not all browsers supp

66、ort JavaScript, and different versions of browsers support different versions of JavaScript, so client-side validation is never guaranteed to work.</p><p>  For this reason, in the past, many developers deci

67、ded to add all their form validation logic exclusively to server-side code. Because server-side code functions correctly with any browser, this course of action was safer.</p><p>  Fortunately, the Validatio

68、n controls discussed in this chapter do not force you to make this difficult choice. The Validation controls automatically generate both client-side and server-side code. If a browser is capable of supporting JavaScript,

69、 client-side validation scripts are automatically sent to the browser. If a browser is incapable of supporting JavaScript, the validation routines are automatically implemented in server-side code.</p><p>  

70、You should be warned, however, that client-side validation works only with Microsoft Internet Explorer version 4.0 and higher. In particular, the client-side scripts discussed in this chapter do not work with any version

71、 of Netscape Navigator.</p><p>  Requiring Fields:The RequiredFieldValidator Control</p><p>  You use RequiredFieldValidator in a Web form to check whether a control has a value. Typically, you

72、use this control with a TextBox control. However, nothing is wrong with using RequiredFieldValidator with other input controls such as RadioButtonList. </p><p>  Validating Expression:The RegularExpressionVa

73、lidator Control</p><p>  You can use RegularExpressionValidator to match the value entered into a form field to a regular expression. You can use this control to check whether a user has entered, for example

74、, a valid e-mail address, telephone number, or username or password. Samples of how to use a regular expression to perform all these validation tasks are provided in the following sections.</p><p>  Comparin

75、g Values:The CompareValidator Control</p><p>  The CompareValidator control performs comparisons between the data entered into a form field and another value. The other value can be a fixed value, such as a

76、particular number, or a value entered into another control. </p><p>  Summarizing Errors:The ValidationSummary Control</p><p>  Imagine that you have a form with 50 form fields. If you use only

77、the Validation controls discussed in the previous sections of this chapter to display errors, seeing an error message on the page might be difficult. For example, you might have to scroll down to the 48th form field to f

78、ind the error message.</p><p>  Fortunately, Microsoft includes a ValidationSummary control with the Validation controls. You can use this control to summarize all the errors at the top of a page, or whereve

79、r else you want.</p><p>  McDonald, Zipuzita </p><p>  the Advanced ASP.NET 3.5 Programming (2nd Edition)</p><p><b>  中文譯文</b></p><p><b>  ASP.NET技術(shù)&l

80、t;/b></p><p>  1.構(gòu)建ASP.NET頁面</p><p>  ASP 和ASP.NET結(jié)構(gòu)</p><p>  ASP.NET 是微軟.NET framework整體的一部分,它包含一組大量的編程用的類,滿足各種編程需要。在下列的二個部分中,你如何學(xué)會 ASP.NET 很適合的放在.NET framework,和學(xué)會能在你的 ASP.NET

81、頁面中使用語言。</p><p><b>  .NET類庫</b></p><p>  假想你是微軟。假想你必須支持大量的編程語言-比如 Visual Basic 、 C# 和 C++. 這些編程語言的很多功能具有重疊性。舉例來說,對于每一種語言,你必須包括存取文件系統(tǒng)、與數(shù)據(jù)庫協(xié)同工作和操作字符串的方法。</p><p>  此外,這些語言包

82、含相似的編程構(gòu)造。每種語言,舉例來說,都能夠使用循環(huán)語句和條件語句。即使用 Visual Basic 寫的條件語句的語法不與 用C++ 寫的不一樣,程序的功能也是相同的。</p><p>  最后,大多數(shù)的編程語言有相似的數(shù)據(jù)變量類型。以大多數(shù)的語言,你有設(shè)定字符串類型和整型數(shù)據(jù)類型的方法。舉例來說,整型數(shù)據(jù)最大值和最小值可能依賴語言的種類,但是基本的數(shù)據(jù)類型是相同的。</p><p> 

83、 對于多種語言來說維持這一功能需要很大的工作量。為什么繼續(xù)再創(chuàng)輪子? 對所有的語言創(chuàng)建這種功能一次,然后把這個功能用在每一種語言中豈不是更容易。</p><p>  .NET類庫不完全是那樣。它含有大量的滿足編程需要的類。舉例來說,.NET類庫包含處理數(shù)據(jù)庫訪問的類和文件協(xié)同工作,操作文本和生成圖像。除此之外,它包含更多特殊的類用在正則表達式和處理Web協(xié)議。</p><p>  .NET

84、 framework,此外包含支持所有的基本變量數(shù)據(jù)類型的類,比如:字符串、整型、字節(jié)型、字符型和數(shù)組。</p><p>  最重要地,寫這一本書的目的,.NET類庫包含構(gòu)建的 ASP.NET 頁面的類。然而你需要了解當(dāng)你構(gòu)建.NET頁面的時候能夠訪問.NET framework 的任意類。</p><p><b>  理解命名空間</b></p>&l

85、t;p>  正如你猜測的,.NET framework是龐大的。它包含數(shù)以千計的類(超過 3,400) 。幸運地,類不是簡單的堆在一起。.NET framework的類被組織成有層次結(jié)構(gòu)的命名空間。</p><p>  ASP Classic Note</p><p>  在先前的ASP中,你僅僅能夠訪問五個標(biāo)準(zhǔn)類。相比之下 ASP.NET 提供超過 3,400個類!</p&g

86、t;<p>  一個命名空間包含一組邏輯的類。舉例來說,涉及到與文件系統(tǒng)協(xié)同工作的類就集合在System.IO 命名空間中。</p><p>  命名空間被組織成一個層次結(jié)構(gòu)(一棵邏輯樹) 。樹根就是SYSTEM 命名空間。這個命名空間包含基本的數(shù)據(jù)類型的所有的類,例如:字符串、數(shù)組,還包含提供隨機數(shù)字和日期的類。</p><p>  你通過完整的類的命名空間能唯一識別任何的

87、類在.NET framework中的位置。舉例來說,指定找到一個the File class 類,按如下操:</p><p>  System.IO.文件</p><p>  System.IO指命名空間 ,而文件指定特定的類。</p><p><b>  提示</b></p><p>  你能夠瀏覽.NET Frame

88、work所有的標(biāo)準(zhǔn)類的命名空間。通過.NET Framework 的參考文檔可以瀏覽類庫。</p><p>  標(biāo)準(zhǔn)的ASP.NET命名空間</p><p>  在默認情況下,在你的ASP.NET頁面中,類被包含在一個選定的命名空間中這些默認的命名空間使你在ASP.NET中最常用到的。</p><p>  System 命名空間- 包含所有的基本數(shù)據(jù)類型和其他有用的

89、類,例如:那些關(guān)于產(chǎn)生隨機數(shù)字和日期的類。</p><p>  System.Collections命名空間- 包含的類是標(biāo)準(zhǔn)的集合類,例如:哈希表,數(shù)組列表。</p><p>  System.Collections.Specialized 命名空間- 包含特殊的集合類,例如:連接列表和字符串集合。</p><p>  System.Configuration 命

90、名空間- 包括Web.config files類。</p><p>  System.Text命名空間-包含編碼,解碼和操作字符串內(nèi)容的類。</p><p>  System.Text.RegularExpressions命名空間- 包含的是匹配正則表達式和替代操作類。</p><p>  System.Web 命名空間-工作在萬維網(wǎng)方面包含的是瀏覽器請求和服務(wù)器響

91、應(yīng)的類。</p><p>  System.Web.Caching 命名空間- 包含頁面緩沖內(nèi)容和自定義緩沖操作的類。</p><p>  System.Web.Security命名空間- 包含執(zhí)行驗證和授權(quán),例如:窗體和密碼驗證的類。</p><p>  System.Web.SessionState命名空間- 包含執(zhí)行保存狀態(tài)的類。</p><

92、;p>  System.Web.UI命名空間- 包含構(gòu)建 ASP.NET 頁面的用戶接口的類。</p><p>  System.Web.UI.HTMLControls命名空間- 包含 HTML 控件的類。</p><p>  System.Web.UI.WebControls命名空間- 包含Web控件的類。</p><p>  .NET Framework-

93、可用的語言</p><p>  這一本書的目的,你將會為以 Visual Basic 作為你的編程語言來完成你的 ASP.NET 頁寫程序編寫。它是 ASP.NET 頁面的默認語言。雖然你在這一本書中一直用 Visual Basic,但是,你也需要了解用其它的支持公共語言庫的語言創(chuàng)建ASP.NET頁面。除此之外,這包括 C#,JScript.NET和C++ 。</p><p><b&

94、gt;  提示</b></p><p>  本書所含的光碟包含 C# 源代碼。</p><p>  除微軟之外的公司產(chǎn)生的幾十個其他的語言已經(jīng)能夠和.NET framework兼容。這些其他的語言的一些例子包括 Python、 SmallTalk 、 Eiffel和 COBOL。這就意味著假如你真的想,你可以使用 COBOL 寫 ASP.NET 頁面。</p>&

95、lt;p>  不管你使用什么語言開發(fā) ASP.NET 頁面,你需要明白ASP.NET在執(zhí)行前必須編譯,這就意味著ASP.NET執(zhí)行速度非???。</p><p>  你第一次請求 ASP.NET 頁面,頁面被編譯成一個.NET類,這個類文件被保存在一個特殊的目錄下這個目錄的名字叫Temporary ASP.NET Files。對于一個ASP.NET頁面一個通信類文件出現(xiàn)在Temporary ASP.NET F

96、iles目錄下。以后不管任何時候你請求那個同樣的ASP.NET頁面,那個通信類文件就會執(zhí)行。</p><p>  當(dāng) ASP.NET 頁面被編譯的時候,它沒被直接地被編譯成機器碼而是被編譯成了一個中間語言,名字叫 (MSIL)所有.NET可用的語言都被編譯成這種中間語言。</p><p>  一個ASP.NET 頁面不會被編譯成本地機器碼直到它被一個瀏覽器訪問,在那個時間點包含在Tempo

97、rary ASP.NET Files目錄下的類文件用JIT編譯器編譯并且執(zhí)行。</p><p>  這些迷惑的方面體現(xiàn)在整個過程都在后臺運行,你必須要做的是用資源代碼為你的ASP.NET頁面創(chuàng)建一個文本文件。.NET framework 為你處理完轉(zhuǎn)換它為編譯碼這一困難工作。</p><p><b>  典型ASP提示</b></p><p>

98、  VBScript 怎么樣呢? 在 ASP.NET 之前,VBScript 是開發(fā)動態(tài)頁面最流行的語言。</p><p>  ASP.NET 不支持VBScript ,而且這是好消息。Visual Basic 是一個 VBScript 的超集,意味著 Visual Basic 相對于 VBScript有更多的功能。因此,你用 Visual Basic 有更豐富的函數(shù)和語句供你使用。</p><

99、;p>  此外,不像 VBScript ,Visual Basic 是一種被編譯的語言。這意味著如果你使用 Visual Basic 重寫相同的 VBScript代碼感覺會更容易一些。</p><p>  假如你過去只用VBScript而不用 Visual Basic,也不用擔(dān)心。因為 VBScript 如此接近 Visual Basic,你將會發(fā)現(xiàn)在這二種語言之間的轉(zhuǎn)變是很容易的。</p>

100、<p><b>  提示</b></p><p>  在.NET framework中,微軟包括一個名叫 IL Disassembler的有趣的工具。在臨時的ASP.NET文件目錄中你能使用這個工具查看沒有裝配的ASP.NET 類的代碼。它列出了類的所有方法和屬性使你能夠瀏覽中間代碼。</p><p>  正如在這章討論的這個工具也可以用于操作ASP.NET

101、控件。舉例來說,你能使用 IL Disassembler 瀏覽 TextBox 控件的中間代碼。(位于在一個叫做 System.Web.dll 的文件中)</p><p>  介紹ASP.NET控件</p><p>  ASP.NET 控件為你的Web應(yīng)用程序提供動態(tài)和交互的用戶接口。這些控件能夠使你的網(wǎng)站的使用者看見和交互。舉例來說,你能使用控件建立 HTML 窗體元素,交互式日歷,而且

102、可以滾動標(biāo)題廣告。</p><p>  ASP.NET 控件和 HTML 內(nèi)容共存。典型地,你用通常的 HTML 創(chuàng)建你的網(wǎng)頁的靜態(tài)區(qū)域和用 ASP.NET 控件創(chuàng)建網(wǎng)頁的動態(tài)區(qū)域。</p><p>  了解 ASP.NET 控件是怎么工作的?最好的方法是看一個簡單的Web應(yīng)用窗體頁面。</p><p>  添加ASP.NET頁面代碼</p><

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論