Je l'ai maintenant remarqué dans VS 2017 dans une application pour console Core et une application .NET Framework MVC standard. Il s'appelle <solution-name>.sqlite
et contient les tables suivantes:
FileScannerCache
FileSystemData
FileSystemEntity
FileSystemReference
ProviderEntity
Setting
SymbolDefinition
Il semble contenir des données liées à MSBuild, mais lorsque j’interroge certaines tables, comme
select * from FileScannerCache
Je reçois l'erreur System.FormatException: String was not recognised as a valid DateTime
. J'utilise Sqlite/SQL Server Compact Toolbox pour examiner et interroger cette base de données.
Ce fichier semble être lié à la fonctionnalité "LSL (Lightweight Solution Load)" dans VS2017. Si vous désactivez LSL dans votre solution, supprimez le fichier du répertoire et ouvrez votre solution. Vous constaterez qu'il n'est pas recréé. Cependant, réactivez LSL pour la solution et ouvrez votre solution, le fichier sera créé à nouveau. Je présume qu'il est utilisé comme une forme d'information en cache pour activer la fonctionnalité LSL.
En passant, toutes les informations du dossier .vs sont censées pouvoir être exclues du contrôle de source en toute sécurité.
Si vous avez fini ici parce que vous obtenez
Git failed with a fatal error.
error: open(".vs/Onion/v15/Server/sqlite3/db.lock"): Permission denied
fatal: Unable to process path .vs/Onion/v15/Server/sqlite3/db.lock
Ensuite, Team Explorer> Paramètres> Paramètres du référentiel> Ajouter /.gitignore. Il devrait maintenant avoir .vs
# Visual Studio 2015 cache/options directory
.vs/
Corrige le problème.