Files
EveCalc/EveCalc.Shared/StaticData/StaticDataProvider.cs
2021-01-30 22:46:48 +01:00

52 lines
1.6 KiB
C#

using EveCalc.Shared.ObjectModel;
using Microsoft.Data.Sqlite;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace EveCalc.Shared.StaticData
{
public class StaticDataProvider
{
public StaticDataProvider()
{
}
public List<BlueprintMaterial> GetMaterialsForBlueprint(long id)
{
var result = new List<BlueprintMaterial>();
using (var connection = new SqliteConnection("Data Source=StaticData\\staticdata.sqlite"))
{
connection.Open();
var command = connection.CreateCommand();
command.CommandText = @"select materialTypeID, invTypes.typename, quantity "
+ "from industryActivityMaterials "
+ "inner join invTypes on invTypes.typeID=industryActivityMaterials.materialTypeID "
+ "where blueprintTypeID=$id";
command.Parameters.AddWithValue("id", id);
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
var material = new BlueprintMaterial();
material.MaterialTypeId = reader.GetInt64(0);
material.MaterialTypeName = reader.GetString(1);
material.Quantity = reader.GetInt64(2);
result.Add(material);
}
}
connection.Close();
}
return result;
}
}
}