vb.net - 选择案例陈述和数据验证
问题描述
我正在尝试使用 select case 语句验证数据范围。我遇到了其他嵌套选择案例的问题。这是可能的还是我一厢情愿的想法?或者我应该将要堆叠的选择案例语句分开吗?
例如,这是我在 vb 中的代码:
Select Case intyear
Case 2000 To 2025
Select Case intmonth
Case 1 To 12
BlnDateValid = True
End Select
Select Case intDay
Case 1 To 31
BlnDateValid = True
End Select
Select Case intHours
Case 0 To 23
BlnDateValid = True
End Select
Select Case intAddDays
Case 0 To 60
BlnDateValid = True
End Select
Select Case intAddHours
Case 0 To 23
BlnDateValid = True
End Select
Case Else
BlnDateValid = False
End Select
If blnDatevalid = false then
MessagebBox.Show("Please check all fields and enter valid
data", "Invalid data", MessageBoxButtons.OK)
解决方案
不幸的是,缩进有意义并不能帮助代码有意义。的重点Select Case
是巧妙地选择多个案例中的一个。A Select Case
with one case 是错误的代码,您应该改用If
语句。在这种情况下,您尤其应该使用语句,因为您可以用单个语句If
替换所有这些语句。Select Case
If
If Not (intyear >= 2000 AndAlso intyear <= 2025 AndAlso
intmonth >= 1 AndAlso intmonth <= 12 AndAlso
intDay >= 1 AndAlso intDay <= 31 AndAlso
intHours >= 0 AndAlso intHours <= 23 AndAlso
intAddDays >= 0 AndAlso intAddDays <= 60 AndAlso
intAddHours >= 0 AndAlso intAddHours <= 23) Then
MessagebBox.Show("Please check all fields and enter valid data", "Invalid data", MessageBoxButtons.OK)
End If
推荐阅读
- xamarin - 他们是否可以通过单击另一个页面的按钮来更改选择器的选定索引?
- git - Visual Studio 中的完整 Git 集成
- python - 为什么在 pandas.pivot_table 中仅在边距 = True 的一维中计算总计?
- django - Django,浏览器显示文件名而不是图片
- mysql - 一张一张显示重复StudentId的验证信息
- javascript - 资源因 MIME 类型而被阻止?
- jira - 如何检查 jira 工作流程
- sql - 在 RStudio 中通过 DBI::dbGetQuery 查询 SQL 数据库的时间是 RGui 的 10 倍
- python - python可变字符串类无法正常工作
- python-3.x - 如何修复“元素未附加到页面文档/元素不可交互”?