ParameterizedString Class
Represents a string that has embedded parameters.
Inheritance Hierarchy
Object
Microsoft.TeamFoundation.TestManagement.Client.ParameterizedString
Namespace: Microsoft.TeamFoundation.TestManagement.Client
Assembly: Microsoft.TeamFoundation.TestManagement.Client (in Microsoft.TeamFoundation.TestManagement.Client.dll)
Syntax
'Declaration
Public Class ParameterizedString _
Implements IEnumerable(Of ParameterizedStringPart), IEnumerable
public class ParameterizedString : IEnumerable<ParameterizedStringPart>,
IEnumerable
public ref class ParameterizedString : IEnumerable<ParameterizedStringPart>,
IEnumerable
type ParameterizedString =
class
interface IEnumerable<ParameterizedStringPart>
interface IEnumerable
end
public class ParameterizedString implements IEnumerable<ParameterizedStringPart>, IEnumerable
The ParameterizedString type exposes the following members.
Constructors
Name | Description | |
---|---|---|
ParameterizedString() | Initializes a new instance of the ParameterizedString class. | |
ParameterizedString(String) | Initializes a new instance of the ParameterizedString class by using the given string. | |
ParameterizedString(XmlReader) | Initializes a new instance of the ParameterizedString class by using the provided XML reader. | |
ParameterizedString(IEnumerable<ParameterizedStringPart>) | Initializes a new instance of the ParameterizedString class by using the provided list of parameter parts. |
Top
Properties
Name | Description | |
---|---|---|
Count | Gets the number of parts in the string. | |
Empty | Gets an empty parameterized string. | |
FlowDocumentString | ||
Item | Gets the parameter part at the given index of the list of parts. | |
ParameterNames | Gets a read-only collection of parameter names from the list of parameter parts. |
Top
Methods
Name | Description | |
---|---|---|
Copy | Returns a copy of this parameterized string. | |
Equals(Object) | Returns a value that indicates whether two objects are equal. (Overrides Object.Equals(Object).) | |
Equals(ParameterizedString) | Returns a value that indicates whether the provided parameterized string is equal to this parameterized string. | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
FromFlowDocument | ||
FromXml | Loads the parameters by using the provided XML reader. | |
GetEnumerator | Returns an enumerator that iterates through the parameter parts collection of this parameterized string. | |
GetHashCode | Returns the hash code for this instance. (Overrides Object.GetHashCode.) | |
GetParameterNamingErrorMessage | Returns the localized message to be returned for an attempt to add a parameter part by using an invalid parameter name. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
IsValidParameterName | Returns a value that indicates whether the provided name is a valid parameter name. | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
RenameParameter | Renames the specified parameter by using the given new name and returns the changed parameterized string. | |
ReplaceParameter | Replaces the specified parameter value by using the given replacement text. | |
ToPlainText | ||
ToString | Returns this parameterized string object as a string. (Overrides Object.ToString.) | |
ToXml | Creates an XML representation of this parameterized string and saves it to the provided XML writer. |
Top
Operators
Name | Description | |
---|---|---|
Equality | Returns the operator to use in code for equality (==). | |
Implicit(String to ParameterizedString) | Converts a string to a parameterized string. | |
Implicit(ParameterizedString to String) | Returns an operator that can be used for implicit comparison of parameterized strings. | |
Inequality | Returns a value that indicates whether two objects are not equal. |
Top
Fields
Name | Description | |
---|---|---|
ElementName | Contains the name of the element to use when this parameterized string object is saved to XML. |
Top
Explicit Interface Implementations
Name | Description | |
---|---|---|
IEnumerable.GetEnumerator | Returns an enumerator that iterates through a collection. |
Top
Remarks
There are two ways to examine such a string... one is as a flat string with embedded parameters, another is as a list of strings and parameter references (names) Rule 1: There is no such thing as an illegal string the parsing rules are intentionally generous Here are some example string forms, together with what they will parse to "Put the @@object on the @@support" -> "Put the ", object, " on the ", support Escaping is optional, if the character following the @ is not a valid identifier lead character, or the string ends in an @ sign, the text is treated as a literal "An @ sign on its own may be OK" -> "An @ sign on its own may be OK" A parameter name must comply with C# identifier rules so for example when parsing a parameter, we stop after the first space: "Log in with @@domain @@user" -> "Log in with ", domain, " ", user If there is literal text immediately following a parameter name, then it may have to be separated "The plural of @@WORD is @@WORD@@s" -> "The plural of ", WORD, " is", WORD, "s" Juxtaposing two parameters without intervening space also requires the terminating @@ sign Enter the compound word @@prefix@@suffix -> "Enter the compound word ", prefix, suffix After the parameter, a ? indicates that the parameter value to be treated as if it were null (even it has been previously set) In a manual test context, this means that in the next example SessionId will always be requested and the new value will be used, even if it had an old value "Check the value of the @?SessionId" Case is not significant for parameters names, in the following string the parameter called "TESTVALUE" is used two times "Enter the test @@TESTVALUE @@testvalue
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.