对于VB.net中的每个循环都陷入条件语句中

问题描述

我正在尝试使用vb.net编写代码,但是我陷入了For Each循环中,希望有人可以提供帮助。

我正在尝试按扩展名搜索文件,并且使用了For Each循环,如下所示:

For Each XMLLFILE In Directory.GetFiles(directoryName,"*.xmll",SearchOption.TopDirectoryOnly)

在那之后,我试图添加一个条件来删除搜索到的文件,如果没有,则弹出一条消息,提示找不到文件。其余代码为:

    If My.Computer.FileSystem.FileExists(XMLLFILE) Then
        File.Delete(XMLLFILE)
        MsgBox("Files Deleted !",vbOKOnly,"DeleteXMLL Files")
    Else
        MsgBox("There's No files to be Deleted !","DeleteXMLL Files")
    End If
    Exit For
Next
End If

每次删除文件时(重复),我都会得到一个消息框,如果文件夹中没有文件,那么我根本就没有消息框。

任何人都可以提供代码帮助吗?

解决方法

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { var dataSource = Path.Combine(System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),"siteDB.db"); optionsBuilder .UseSqlite($"Data Source={dataSource};"); } 方法返回该文件夹中确实存在的文件。您的GetFiles()语句检查每个文件是否存在,这没有任何意义(因为我们已经知道它们存在)。相反,您应该检查If是否返回任何文件。

尝试以下操作:

GetFiles()