1
0
mirror of https://github.com/akpaevj/OneSTools.FileDatabase.git synced 2026-04-24 19:13:53 +02:00

Update README.md

This commit is contained in:
Akpaev Evgeny
2021-01-03 00:48:38 +03:00
committed by GitHub
parent 1fef8d6b7c
commit c28e6507e5
+37 -2
View File
@@ -1,4 +1,39 @@
# OneSTools.FileDatabase
Библиотека для чтения данных файловых информационных баз 1С (Документация в разработке)
[![Nuget](https://img.shields.io/nuget/v/OneSTools.FileDatabase)](https://www.nuget.org/packages/OneSTools.FileDatabase)
Библиотека для чтения данных файловых информационных баз 1С. Поддерживается работа только с актуальной версией формата файлов (8.3.8) и только операции чтения
Кроме обычных информационных баз, так-же дает возможность прочитать данные базы хранилища конфигурации.
Позволяет считывать данные таблиц (поддерживается только версия файлов 8.3.8).
Пример работы с библиотекой:
```csharp
using var database = new FileDatabaseConnection("..\1Cv8.1CD");
database.Open();
var table = database.Tables.FirstOrDefault(c => c.Name == "_Document38");
if (table != null)
{
foreach (var values in table.Rows)
{
for (int i = 0; i < table.Fields.Count; i++)
{
var field = table.Fields[i];
var value = values[i];
// Or another one what you need
if (field.Type == FieldType.Numeric)
{
var typedValue = (decimal?)value;
}
if (field.Type == FieldType.NChar
|| field.Type == FieldType.NText
|| field.Type == FieldType.NVarChar)
{
var typedValue = (string)value;
}
}
}
}
```
Подключение представлено объектов **FileDatabaseConnection**, который предоставляет информацию об открытой базе и в числе прочего содержит коллекцию **Tables**
Каждый обект коллекции **Tables** представляет информацию о схеме таблицы и предоставляет доступ к данным таблицы через свойство Rows. Это свойство имеет тип **ReadOnlyCollection** и предоставляет возможность считывать данные используя LINQ.