BaseCompareValidator.CanConvert Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, czy określony ciąg można przekonwertować na określony typ danych.
Przeciążenia
CanConvert(String, ValidationDataType) |
Określa, czy określony ciąg można przekonwertować na określony typ danych. Ta wersja przeciążonej metody testuje waluty, podwójne i wartości daty przy użyciu formatu używanego przez bieżącą kulturę. |
CanConvert(String, ValidationDataType, Boolean) |
Określa, czy określony ciąg można przekonwertować na określony typ danych. Ta wersja przeciążonej metody umożliwia określenie, czy wartości są testowane przy użyciu formatu neutralnego dla kultury. |
CanConvert(String, ValidationDataType)
Określa, czy określony ciąg można przekonwertować na określony typ danych. Ta wersja przeciążonej metody testuje waluty, podwójne i wartości daty przy użyciu formatu używanego przez bieżącą kulturę.
public:
static bool CanConvert(System::String ^ text, System::Web::UI::WebControls::ValidationDataType type);
public static bool CanConvert (string text, System.Web.UI.WebControls.ValidationDataType type);
static member CanConvert : string * System.Web.UI.WebControls.ValidationDataType -> bool
Public Shared Function CanConvert (text As String, type As ValidationDataType) As Boolean
Parametry
- text
- String
Ciąg do przetestowania.
- type
- ValidationDataType
Jedna z ValidationDataType wartości.
Zwraca
true
jeśli określony ciąg danych można przekonwertować na określony typ danych; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano użycie CanConvert metody w celu porównania dwóch wartości całkowitych i określenia, czy można przekonwertować drugą liczbę całkowitą.
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>BaseCompareValidator CanConvert Example</title>
<script runat="server">
void Button_Click(Object sender, EventArgs e)
{
// Display whether the value of TextBox1 passes validation.
if (Page.IsValid)
{
lblOutput.Text = "Validation passed! ";
// An input control passes validation if the value it is being
// compared to cannot be converted to the data type specified
// by the BaseCompareValidator.Type property. Be sure to use
// validation controls on each input control independently.
// Test the values being compared for their data types.
ValidateType(Page.IsValid);
}
else
{
lblOutput.Text = "Validation failed! ";
// Test the values being compared for their data types.
ValidateType(Page.IsValid);
}
}
void ValidateType(bool Valid)
{
// Display an error message if the value of TextBox1 cannot be
// converted to the data type specified by the
// BaseCompareValidator.Type property (in this case an integer).
if (!BaseCompareValidator.CanConvert(TextBox1.Text, ValidationDataType.Integer))
{
lblOutput.Text += "The first value is not an integer. ";
}
// Display an error message if the value of TextBox2 cannot be
// converted to the data type specified by the
// BaseCompareValidator.Type property (in this case an integer).
if (!BaseCompareValidator.CanConvert(TextBox2.Text, ValidationDataType.Integer))
{
// An input control passes validation if the value it is being
// compared to cannot be converted to the data type specified
// by the BaseCompareValidator.Type property.
// Display a different message when this scenario occurs.
if(Valid)
{
lblOutput.Text += "However, the second value is not an integer. ";
}
else
{
lblOutput.Text += "The second value is not an integer. ";
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>BaseCompareValidator CanConvert Example</h3>
<p>
Enter an integer in each text box. <br />
Click "Validate" to compare the values <br />
for equality.
</p>
<table style="background-color:#eeeeee; padding:10">
<tr valign="top">
<td>
<h5>Value 1:</h5>
<asp:TextBox id="TextBox1"
runat="server"/>
</td>
<td>
<h5>Value 2:</h5>
<asp:TextBox id="TextBox2"
runat="server"/>
<p>
<asp:Button id="Button1"
Text="Validate"
OnClick="Button_Click"
runat="server"/>
</p>
</td>
</tr>
</table>
<asp:CompareValidator id="Compare1"
ControlToValidate="TextBox1"
ControlToCompare="TextBox2"
EnableClientScript="False"
Type="Integer"
runat="server"/>
<br />
<asp:Label id="lblOutput"
Font-Names="verdana"
Font-Size="10pt"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>BaseCompareValidator CanConvert Example</title>
<script runat="server">
Sub Button_Click(sender As Object, e As EventArgs)
' Display whether the value of TextBox1 passes validation.
If Page.IsValid Then
lblOutput.Text = "Validation passed! "
' An input control passes validation if the value it is being
' compared to cannot be converted to the data type specified
' by the BaseCompareValidator.Type property. Be sure to use
' validation controls on each input control independently.
' Test the values being compared for their data types.
ValidateType(Page.IsValid)
Else
lblOutput.Text = "Validation failed! "
' Test the values being compared for their data types.
ValidateType(Page.IsValid)
End If
End Sub
Sub ValidateType(Valid As Boolean)
' Display an error message if the value of TextBox1 cannot be
' converted to the data type specified by the
' BaseCompareValidator.Type property (in this case an integer).
If Not BaseCompareValidator.CanConvert(TextBox1.Text, ValidationDataType.Integer) Then
lblOutput.Text &= "The first value is not an integer. "
End If
' Display an error message if the value of TextBox2 cannot be
' converted to the data type specified by the
' BaseCompareValidator.Type property (in this case an integer).
If Not BaseCompareValidator.CanConvert(TextBox2.Text, ValidationDataType.Integer) Then
' An input control passes validation if the value it is being
' compared to cannot be converted to the data type specified
' by the BaseCompareValidator.Type property.
' Display a different message when this scenario occurs.
If Valid Then
lblOutput.Text &= "However, the second value is not an integer. "
Else
lblOutput.Text &= "The second value is not an integer. "
End If
End If
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>BaseCompareValidator CanConvert Example</h3>
<p>
Enter an integer in each text box. <br />
Click "Validate" to compare the values <br />
for equality.
</p>
<table style="background-color:#eeeeee; padding:10">
<tr valign="top">
<td>
<h5>Value 1:</h5>
<asp:TextBox id="TextBox1"
runat="server"/>
</td>
<td>
<h5>Value 2:</h5>
<asp:TextBox id="TextBox2"
runat="server"/>
<p>
<asp:Button id="Button1"
Text="Validate"
OnClick="Button_Click"
runat="server"/>
</p>
</td>
</tr>
</table>
<asp:CompareValidator id="Compare1"
ControlToValidate="TextBox1"
ControlToCompare="TextBox2"
EnableClientScript="False"
Type="Integer"
runat="server"/>
<br />
<asp:Label id="lblOutput"
Font-Names="verdana"
Font-Size="10pt"
runat="server"/>
</form>
</body>
</html>
Uwagi
CanConvert(String, ValidationDataType) Użyj metody , aby określić, czy określony ciąg można przekonwertować na określony typ danych. Ta metoda jest często używana do testowania, czy ciąg można przekonwertować na zgodny typ danych przed wykonaniem operacji, która zależy od tego typu danych.
Ta wersja metody testuje wartość przy użyciu formatu używanego przez bieżącą kulturę. Aby przetestować wartość przy użyciu formatu neutralnego dla kultury, użyj przeciążonej BaseCompareValidator.CanConvert(String, ValidationDataType, Boolean) wersji tej metody.
Zobacz też
Dotyczy
CanConvert(String, ValidationDataType, Boolean)
Określa, czy określony ciąg można przekonwertować na określony typ danych. Ta wersja przeciążonej metody umożliwia określenie, czy wartości są testowane przy użyciu formatu neutralnego dla kultury.
public:
static bool CanConvert(System::String ^ text, System::Web::UI::WebControls::ValidationDataType type, bool cultureInvariant);
public static bool CanConvert (string text, System.Web.UI.WebControls.ValidationDataType type, bool cultureInvariant);
static member CanConvert : string * System.Web.UI.WebControls.ValidationDataType * bool -> bool
Public Shared Function CanConvert (text As String, type As ValidationDataType, cultureInvariant As Boolean) As Boolean
Parametry
- text
- String
Ciąg do przetestowania.
- type
- ValidationDataType
Jedna z ValidationDataType wartości wyliczenia.
- cultureInvariant
- Boolean
true
do testowania wartości przy użyciu formatu neutralnego dla kultury; w przeciwnym razie , false
.
Zwraca
true
jeśli określony ciąg danych można przekonwertować na określony typ danych; w przeciwnym razie , false
.
Uwagi
CanConvert(String, ValidationDataType, Boolean) Użyj metody , aby określić, czy określony ciąg można przekonwertować na określony typ danych. Ta metoda jest często używana do testowania, czy ciąg można przekonwertować na zgodny typ danych przed wykonaniem operacji, która zależy od tego typu danych. Aby wskazać, że wartości powinny być testowane przy użyciu formatu neutralnego dla kultury, należy przekazać true
dla parametru cultureInvariant
. W przeciwnym razie wartości są testowane przy użyciu formatu używanego przez bieżącą kulturę. Podczas testowania wartości przy użyciu formatu używanego przez bieżącą kulturę rozważ użycie BaseCompareValidator.CanConvert(String, ValidationDataType) przeciążonej wersji tej metody.