Vous êtes sur la page 1sur 14

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Microsoft .NET Platform Microsoft BizTalk Server 2000 Microsoft .

.NET Platform is used to simplify Web Development Microsoft Host Integration Server 2000 by providing all of the tools and technologies that a Microsoft Exchange 2000 Enterprise Server programmer needs to build distributed applications. Microsoft Application Center 2000 - Includes the .NET Framework, Building Block Services, Microsoft Internet Security and Acceleration Server and Orchestration which are the new capabilities of 2000 the platform. It also consists of COM+ which is available today and .NET Enterprise Services and .NET Framework Visual Studio .NET. The .NET framework is a set of technologies that are integral - Microsoft .NET is a set of technologies designed to part of the .NET Platform. It provides the basic building block transform the Internet into a full-scaled distributed to develop Web computing platform Applications and Web services by using ASP.Net. it also . provides the services necessary to develop and deploy Technologies in the .NET Platform applications for loosely coupled, disconnected internet .NET Framework is based on a Common Language Runtime environment. (CLR), which provides sets of services built in any Visual Studio.NET languages. It also has Framework Class Library Languages in the .NET Framework (FCL), which provides predefined types or classes that can be Microsoft Visual Basic .NET provides substantial used in programming applications. language innovations over previous versions of Visual Basic. Microsoft Visual C# - designed for the .NET Platform and is .NET Building Block Services are programmable services the first modern component-oriented language in the C and that can be implemented on a computer connected in the C++ family. It can be embedded in ASP.NET pages. local server only (offline) or accessed through the internet Managed Extensions C++ - a managed minimal extension (online). to the C++ language. Microsoft Visual J# .NET for Java developers who want to Visual Studio.NET provides advanced features, high-level build and develop applications and services for the .NET development environment for building applications on the Framework. .NET Framework. It provides new features for Window-based Third-party languages includes COBOL, Pascal, Perl, applications. It provides also the technologies to simplify the Phyton and SmallTalk. design and development of Web services and applications. .NET Enterprise Servers include: Microsoft SQL Server 2000 Page 1 Components/Elements of the .NET Framework Common Language Runtime(CLR)

VB.Net Handouts STI-Fairview ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- .NET Framework Class Library(FCL) System.Net provides interface to Transmission Control Protocol/Internet Protocol (TCP/IP) and sockets ADO.NET: Data and XML support used on the internet. ASP.NET: Web Forms and Services System.Reflection contains classes and interfaces User Interface for Windows that return information about types, methods and fields. System.IO provides file I/O, streams, and so on for the data access with files. Common Language Runtime (CLR) System.Security includes classes to support the CLR is responsible for loading code as well as managing the structure of common language runtime security system. execution of that code. It simplifies application development, provides a robust and secure execution environment, System.Text contains classes representing ASCII, supports multiple languages, simplifies application Unicode, and other character encodings; and abstract deployment and management, and provides a managed base classes for converting blocks of characters to and environment. from block of bytes. - A managed environment is one in which the System.Threading includes classes and interfaces to environment provides common services automatically. support multithreaded applications. It makes the development process easier. System.Diagnostics includes classes that allow to debug an application and to step through a code. .NET Framework Class Library (FCL) System.Runtime.InteropServices provides a wide The FCL is a consistent, object-oriented library of pre-packed variety of members that support COM interop and functionality. It exposes features of the runtime and provides platform invoke services. other high-level services that every programmer needs System.Collections includes classes and interfaces through an object hierarchy known as namespace. that define various collections of objects such as lists, Namespaces are used in .NET framework assemblies to hash tables, arrays, queues, etc. organize the objects of an assembly such as classes, System.Globalization includes classes that define interfaces, and modules into a structure that is easy to culture-related information such as country or region, understand. Here are some of the namespaces and their use: language, and format patterns for dates and currencies. System contains fundamental classes and base classes for commonly used data types, events and event ADO.NET: Data and XML handlers, interfaces, attributes, and processing It is the next generation of ActiveX Data Object (ADO) exceptions. technology. It provides improved support for the disconnected programming model. It also provides rich XML support. Page 2

VB.Net Handouts STI-Fairview ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- System.Drawing provides access to GDI+ basic ADO.NET classes used to handle data and support SML at graphics functionality. runtime: System.Data consists of classes that constiture the Visual Basic .NET Enhancements ADO.NET object model. Major Language Enhancements System.Xml provides support for XML. Enhanced object-oriented support allows VB.NET developers to use class inheritance, constructors, destructor, overloading, interfaces, and polymorphism. ASP.NET: Web Forms and Services ASP.NET is an object-oriented, event driven programming Structured exception handling simplifies exception framework that I is built on the common language runtime handling, and allows a programmer to use powerful that can be used on a server to build powerful Web features such as nested exceptions. applications. ASP.NET Web Forms is used to create dynamic Web user interfaces. ASP.NET Web Services is used for constructing distributed Web-based applications and are based on open internet standards, such as HTTP and XML. Full access to the .NET Framework New threading options allows to create applications Some of the common ASP.NET classes are: that use multithreaded capabilities. System.Web- supplies classes and interfaces that Garbage Collection ensures that applications created enable browser-server communication. in VB.NET do not hold on to unreferenced memory. System.Web.Services handles Web Service requirements such as transportation protocols and Enhanced Web Development service discovery. Create Web Forms easily all aspects of a Web System.web.UI provides two classes of controls application are simply created in a single environment (HTML and Web Controls). in a way that will be easy for VB developers to understand. User Interface for Windows Create Web Services quickly Web services can be Windows applications can provide more powerful user done quickly in a fashion similar to creating interfaces than ever by using .NET frameworks components in previous VB. System.Windows.Forms and System.Drawing namespaces. System.Windows.Forms used to build the client UI. It Visual Basic .NET Language contains classes for creating Windows-based Data Types applications. Page 3

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------The data type of a variable or constant indicates what type of The Short data type replaces the Integer data type. information will be stored in the allocated memory space. The Integer data type replaces the Long data type. Each type has name (e.g. integer) and a size(e.g. 4 bytes). The new Long data type is a 64-bit, 6 byte number The size tells you how many bytes each object of this type which is a very large number. occupies in memory. The Variant type is not supported in VB.NET but the Type Size(in Description Object data type can be used. bytes) The Currency data type is not supported in VB.NET. Boolea 2 True or False. Use the Decimal data type as a replacement. n The Date data type is available in VB.NET but is not Byte 1 Unsigned(values 0-255) Char 2 Unicode characters (0 -65,535 stored in the same format as in VB 6. Date variables unsigned) are stored internally as 64-bit integer. Date 8 Midnight 1/1/0001 through 11:59:59 Fixed length strings are no longer supported. 12/31/9999 Decim 16 Fixed-precision numbers up to 28 digits CType al and the position of the decimal point; Use the CType function to convert any value from one data typically used in financial calculations; type to another. If the value is outside the range alloed by requires the suffix m or M Double 8 Double-precision floating-point the type, an error will occur. numbers; holds the values from Syntax: CType (expression, typename) approximately +/-1.8 * 10308 with 15Example: Dim StrX as String, intY as Integer 16 significant figures. StrX = 34 Integer 4 Integer values between -2,147,483,648 intY = CType(strX, Integer) and 2,147,483,647. Variables Long 8 Integers ranging from 9,223,372, A variable is an object that can hold a value. 036,854,775,808 to A variable is a named storage location with a type. 9,223,372,036,854,775,807. Short 2 Integer values -32,768 to 32, 767 Syntax: Single 4 Floating-point numbers; holds the Dim identifier As Data type = value /expression values from approximately +/-1.5 *10Example: 45 to approximate +/- 3.4 *1038 with 7 Dim I as integer = 15 significant figures. Dim dToday as Date = Now() String Varies A sequence of Unicode characters. Variable Scope Data Types Changes Page 4

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------These values are called the Elements of an array. The Private available to the module, class, or structure in number of elements that an array contains is called the which they are declared. length of the array. Public available to all procedures in all classes, modules and structures in the application. Types of Arrays Static special variable types that retain their values One-dimensional arrays it can be thought of as a row of within the scope of the method or class in which they storage device or a table with the same data values are declared. occupying its slots or cells, even with different identifiers. Shared properties, procedures, or fields that are Two-dimensional arrays allow you to create rows of shared by all instances of a class. This makes it easy to elements, one above the other. It is used to hold pairs, or declare a new instance of a class, but maintained a even triplets of values. It is also known as an array of arrays shared, public variable throughout all instances of the because its elements are arrays. class. Rectangular all the rows are of the same length. It is Protected available only to the class in which they an array of two (or more) dimensions. are declared, or classes that derive from the same class. Jagged each row has different length. It allows Friend accessible from any class or module within the grouping a few arrays of different sizes into a assembly that they declared in. single array. Constant A constant is like a variable that can store a value, but it cannot be changed while the program runs. Syntax: Const Constantname as type = expression Example: Const consX as Integer = 100 ARRAYS Array is a memory location that is used to store multiple values. It is an indexed collection of objects, all of the same type. It is the simplest collection of objects in VB.NET. All the values in an array are of the same type and are referenced by their index or subscript number, which the order in which these values are stored in an array. Declaring an Array One-dimensional Array Syntax: Dim array_name (Num_elements) as Element type Where: Array_name name of the array Num_elements number of elements the array can contain Element_Type data type of elements Example: Dim arryEmp_Name (100) as String Two-dimensional array Syntax: Dim Array_name( , ) as Element_type Example: Dim arr(10,2) as String

Page 5

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Dynamic Array << Performs an arithmetic The size of a dynamic array can vary during the execution of left shift on a bit the program. pattern Example: Dim Arr_Name() as String Comparison Operators Logical/bitwise operators ReDim Statement < Less than AND The result is true if Use ReDim statement to specify or change the size of one or both operands are more dimensions of an array that has already been declared. true <= Less than or equal to Not Reverses the logical Preserve Keyword value of its operand If you dont want to lose the contents of an array while > Greater than OR The result is true if resizing it, use the preserve keyword with the ReDim either operands is statement. true. >= Greater than or equal XOR Performs an Visual Basic Operators to executive Or Arithmetic Operators Assignment Operators operation. ^ Exponentiation = Assignment = Equal to. AndAl A short-circuit AND * Multiplication ^= Exponentiation so operator followed by <> Not equal to OrElse A short-circuit Or assignment operator. / Division *= Multiplication followed Is True if two objects by assignment references refer to the \ Integer Division /= Division followed by same object assignment Lik Performs string pattern Mo Modulus Division \= Integer division e matching d followed by + >> Addition Subtraction Performs an arithmetic right shift on a bit pattern += -= &= assignment Addition followed by assignment Subtraction followed by assignment String concatenation followed by assignment. Page 6 Other operators AddressOf Gets the address of a procedure GetType Gets information about a type + and & - concatenation Operator Precedence

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------When several operations occur in an expression at once, each part is evaluated and resolved in a predetermined order If Statements known as operator precedence. The If statements allow a programmer to use comparison and logical operators to examine data and make decisions based Arithmetic and Concatenation precedence on the results. Exponentiation Syntax: Negation If condition Then Multiplication and division [Statements] Integer division ElseIf condition Then Modulus division [Statements] Addition and subtraction : String Concatenation(+) : String Concatenation(&) : Arithmetic bit shift Else [else statements] Comparison precedence End If Equality Inequality Select Statements Less than, greater than When there are number of conditions to check, it is better to Greater than or equal to use a Select statement than an If statement with many ElseIf Less than or equal to statements. Like Syntax: Is Select Case Test-expression Case expression 1 Logical/bitwise [statements] Negation (Not) Case expression 2 Conjunction (And, AndAlso) [statements] Disjunction (Or, OrElse, Xor) : : Conditional Statements (branching statements) Case Else Allows a programmer to make decisions and take different [else-statements] paths in the code, depending on the results of those End Select decisions. Page 7

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Control Statements [exit do] Control statements, also known as Looping, repeat action(s) [statements] for a number of times or until a specified condition is Loop [While / Until] condition achieved. While End Statements ForNext Statement Use WhileEnd While statements to repeat a set of Use the For Next Statement when the number of passes to statements as long as the condition is true. be made through the loop is known. Syntax: While condition Syntax: For index as data type = start to end [statements] [statements] End while [Exit for] [statements] Next [index] With Statements For EachNext Statements Syntax: With Object Use the For EachNext loop to loop over elements in an [statements] array or other type of collection of elements. End With Syntax: For Each Element as data type In group [statements] Procedures [exit for] Procedures contain all of the executable code in the [statements] application. It gives the ability to logically group code that Next [element] will perform certain task. DoLoop Statements Use Do loop to keep executing Visual Basic statements while or until its condition is true. Syntax: Do [While/Until] condition [statements] [exit do] [statements] Loop Do [statements] Page 8 Procedure Access Modifiers Access Modifiers determine the scope within which a procedure can be called. Here are the valid access modifiers for all Sub and Function Procedures. Public procedures that can be called from any class or module in the application. Private Procedures that can be called only from the class or module where they are declared. Shared Procedures that are not associated with an instance of a class.

VB.Net Handouts STI-Fairview ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Protected Procedures that can be called from any Overrides indicates that the procedures can override class or module where they are declared or from the an identically named procedure in the base class. derived classes. Overridable indicates that the procedures can be Friend Procedures that can be called from any class overridden by an identically named procedure in a or module in the application that contains its derived class. declaration. NotOverridable indicates that this procedure cannot be Protected Friend procedures that have both overridden in a derived class. Protected and Friend access. MustOverride indicates that the procedures is not implemented in the class and must be implemented in Types of Procedures a derived class for a class to be creatable.. Sub Procedure A procedure which performs specific [Public | . | Private] represents the access modifier tasks and do not return a value to a calling statement. for the Sub procedure. Function Procedure - A procedure which performs Sub indicates that the procedure is a Sub procedure. specific tasks and return a value to a calling SubName represents the name of the procedure. statement. [argumentlsts] represents the lists of arguments to be passed to the procedure. Sub Procedure Syntax: End Sub indicates the end of the Sub procedure. [<attrlist>] [{overloads | overrides | overridable | not overridable | MustOverride | Shadows | Shared }] The syntax for calling a Sub procedure is: [{Public | Protected | Friend | Protected Friend | Private Call <Procedure Name> ([argument list]) }] The Call keyword can be used to execute the code inside of a Sub SubName [(arglist)] sub procedure. [statements] [Exit Sub] Function Procedures [statements] Function Procedures perform a specific task and are created End Sub in classes and modules, but unlike sub procedure, it can In the syntax, Overloads indicates that there are other procedures in the class with the same name, but with different arguments. return a value. Syntax: [<attrlist>] [{overloads | overrides | overridable | not overridable | MustOverride | Shadows | Shared }] [{Public | Protected | Friend | Protected Friend | Private }]

Page 9

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Function FunctionName [(arglist)] [as Type] 2. Fix and Int: removes the fractional part of a number. [statements] 3. Hex: Returns the string representation of the [Exit Function] hexadecimal value of a number. [statements] 4. Oct: returns the string representation of the Octal End Function value of a number. 5. Str: returns the string representation of a number. The syntax for calling a Function procedure is: 6. Val: returns the numbers contained in a string as a ReturnValue = <functionName>[(argument list)] numeric value. In the syntax, [<attrlist>] [{overloads | overrides | overridable | not overridable | MustOverride | Shadows | Shared }] [{Public | Protected | Friend | Protected Friend | Private }] are the same with sub procedure Function indicates that the procedure is a Function procedure. <FunctionName> represents the name of the Function procedure. ([Argument list]) represents the list of arguments to be passed to the procedure. [As <type>] represents the data type of the return value of the Function procedure. Exit Function explicitly exits a function. There can be more than one Exit function statement in a function. End Function indicates the end of the Function procedure. Built-in Functions The following are the built-in functions in Microsoft.VisualBasic Namespace: 1. ErrorToString: returns a human-readable string representing the numeric error number passed to it. Page 10 Microsoft.VisualBasic.DateAndTime 1. DateAdd: returns a date value to which a time interval has been added. 2. DateDiff: returns a long value representing the unit of time between two dates value. 3. DatePart: returns an integer value representing the requested part of the date. 4. DateSerial: returns a date value representing the year, month and day. 5. DateString: returns or sets a string value representing the current date on your system. 6. DateValue: returns a Date data type value containing the date represented by a string. 7. Day: returns an integer value ranging from 1 to 31. 8. Hour: returns an integer value ranging from 0 to 23. 9. Minute: returns an integer value ranging from 0 to 59. 10.Month: returns an integer value ranging from 0 to 12. 11.MonthName: returns a string value containingthe name of the specified integer value of the month. 12.Now: returns the date value containing the current date and time of the system. 13.Second: returns an integer value ranging from 0 to 59.

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------14.TimeOfDay: returns a time value containing the 6. GetChar: returns a char value representing the current date and time of the system. character from the specified index in the supplied 15.Timer: returns a double representing the number of string. seconds elapsed since midnight. 7. InStr: returns an integer specifying the start position of 16.TimeSerial: returns a date value representing the the first occurrence of one string within another. hour, minute and second. 8. InStrRev: returns on integer specifying the start 17.TimeString: returns or sets a string value position of the first occurrence of one string within representing the current time of day according to another starting from the right side of the string. thesystem. 9. Join: returns a string created by joining a number of 18.TimeValue: returns the date value representing the substrings contained in an aray. time of string. 10.LCase: converts a string to lower case. 19.Today: returns or sets a date value containing the 11.Left: returns a string containing a specified number of current date and time of the system. characters in a string from the left side of the string. 20.WeekDay: returns an integer value containing a 12.Len: returns an integer containing either the number number representing the day of the week. of characters in a string or the number of bytes 21.WeekDayName: returns a string value containing the required to store a variable. name of the specified weekday. 13.LSet, RSet: Pad either the left or right side of a string. 22.Year: returns an integer value ranging from 0 to 9999. 14.LTrim, Trim, RTrim: returns a string containing a copy of a specified string with no spaces. Microsoft.VisualBasic.String 15.Mid: returns a string containing a specified number of 1. ASC: returns the integer character code value of the characters from a string. first letter in a string. 16.Replace: Returns a string in which a specified 2. Chr: Takes an ANSI value and converts to a string substring has been replace with another substring a containing the character code. specified number of times. 3. Filter: returns a zero-based array containing a subset 17.Space: returns a string consisting of the specified of string array based on specified filter criteria. number of spaces. 4. FormatNumber, FormatCurrency, FormatPercent: 18.Split: returns a zero based, one dimensional array return an expression formatted as a number of the containing specified number of substring. specified type. 19.StrComp: returns -1, 0 or 1 based on the result on the 5. FormatDateTime: returns an expression formatted as a string comparison. date or time. 20.StrConv: returns a converted string based on the specified conversion enumeration. Page 11

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------21.StrReverse: returns a string in which the character Unstructured Exception Handling order is reverse. Syntax: On Error {GoTo [line |0|-1] |Resume Next } 22.UCase: converts a string to upper case. The parts of the statements are: GoTo Line calls the error-handling codes that starts at the line specified at line. Exception Handling GoTo 0 disables the enabled error handler in the Visual Basic .NET has good support in handling runtime current procedure. errors or exceptions. GoTo -1 disables the enabled error handler in the There are two ways of handling exceptions in VB.NET: current procedure. Unstructured centers on the On Error GoTo Resume Next specifies that when an exception statement. For unstructured exception handling, it can occurs, executing skips over the statement that be handled anywhere in the code using the On Error caused the problem and goes to the statement GoTo statement. immediately following. Structured centers on the Try/Catch statement. For Example: structured exception handling, it restricts errors Private sub GetName() handling to a specific code of blocks. On Error GoTo errHandler [Code] The disadvantages of unstructured exception handling are: [Exit sub] 1. Code is difficult to read, debug and maintain Errhandler: 2. Easy to overlook errors handles error End Sub Types of Errors 1. Syntax errors the reason for these errors are Exceptions Number and Description misspelled keywords or variables. The VB.NET A built-in error object named err has a number property that compiler will normally catch these errors while coding. determines an errors number. 2. Logic errors These errors occur when code does not When testing the program, use err.number to determine the act as expected because of a flaw in the logic that is number of errors that may occur and use those numbers to applied. handle errors in different ways. 3. Runtime errors these errors occur when a program is asked to do something that it can not do, such as Resume Statement dividing a number by zero, or opening a file that does Resume statement is Used to resume program execution in not exist.. unstructured exception handling. Syntax: Page 12

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Resume[0] Syntax: Resume Next Try Resume Line [try statements] [Catch [Exception1] [as type 1]] [When Resume resumes execution with the statement that expression1] caused the error. catchStatments1 Resume next resumes execution with the statement [Exit Try] after the one that caused errors. [Catch [exception2[ as type2]] [When Resume line resumes execution at line, a line expression2] number or label that specifies where to resume Catch statements2 execution. [Exit try] : Structured Exception Handling [Catch [exception[ as type]] [when expression] Structured exception handling centers on the Try/Catch Catchstatementsn statement. [Exit try] Advantages of Structured Exception Handling [finally Supported by multiple languages- it is used in many [finally statements] ] programming languages, such as Visual C++, and End try Visual C#. Allows creating protective blocks of code. Any exceptions in code that was left unprotected are raised to the calling procedure. Allows filtering of exceptions similar to Select case statement using the catch block. Allows nested handling You can nest exception handlers within other handlers as needed, and variables declared within each block with have blocklevel scope. Code is easier to read, debug and maintain, the flow of execution is easy to follow and does not require jumps to non-sequential code. Parts of the syntax are: Try starts of the try block. tryStatements specifies the sensitive statements where possible exceptions ara anticipated. Catch starts the block that handles the exceptions. Exception specifies the variable given to the exception. Type indicates the type the exception wanted to catch in a catch block. When Expression specifies a catch block clause that means the catch block will catch exceptions only when expression is true.

Try Catch Family Page 13

VB.Net Handouts STI-Fairview -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Message use the message property to retrieve information catchStatement specifies statements that handle about why an exception was thrown. A generic message is exceptions occurring in the Try block. returned if the exception was created without a particular Exit try exists a Try/Catch statement immediately. message. Finally starts a finally block that is always executed when execution leaves the Try/Catch statement. Source use the source property to retrieve the name of the Finallystatements- specifies statements that are application or object that generated the exception. executed after all other exception processing has occurred. StackTrace use the StackTrace property to retrieve the stack trace of the exception as a string. Example: Sub TrySimpleException Dim i1, k2 , iResult as Decimal i1=21 i2=0 Try iResult = i1 / i2 msgbox(iResult) Catch eException As Exception Msgbox(eException.Message) Finally Beep End tRy End sub System.Exception Class The System.Exception class in VB.NET provides information about a particular exception. When it is used in the catch blocks, exception can be determined, where it came from, and whether there is any help available. Here are some of the useful properties and methods of the System.Exception and its description. Page 14 InnerException use the InnerException property to navigate to multiple nested exceptions. Nesting exceptions may be useful if a more specific exception needs to be generated while maintaining the information from the original exception. If only the original exception is required, us the GetBaseException method. HelpLink use the HelpLink property to retrieve the appropriate Help file, URN, or URL for the exception. ToString use the ToString method to return the fully qualified name of the exception, the exception message, the name of the inner exception, and the stack trace. NOTE: Uniform Resource Locators (URLs) and Uniform Resource Names (URNs) are both examples of Uniform Resource Identifiers (URIs). A URN is a unique identifier that is not necessarily in the form of a URL. They can be any combination of characters that is unique

Vous aimerez peut-être aussi