コード例 #1
0
        private ILookup <String, PeakBounds> ReadPeakBounds(string blibFile)
        {
            var entries = new List <Tuple <string, PeakBounds> >();

            using (var connection = new SQLiteConnection(
                       SessionFactoryFactory.SQLiteConnectionStringBuilderFromFilePath(blibFile).ToString())
                                    .OpenAndReturn())
            {
                using (var cmd = connection.CreateCommand())
                {
                    cmd.CommandText = "SELECT s.peptideSeq, r.startTime, r.endTime\n" +
                                      "FROM RefSpectra s LEFT JOIN RetentionTimes r ON s.id = r.RefSpectraID\n" +
                                      "WHERE r.startTime IS NOT NULL AND r.endTime IS NOT NULL";
                    using (var reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            entries.Add(Tuple.Create(reader.GetString(0),
                                                     new PeakBounds(reader.GetDouble(1), reader.GetDouble(2))));
                        }
                    }
                }
            }
            return(entries.ToLookup(tuple => tuple.Item1, tuple => tuple.Item2));
        }
コード例 #2
0
ファイル: PooledSqliteConnection.cs プロジェクト: zrolfs/pwiz
        protected override IDisposable Connect()
        {
            DbProviderFactory fact = new SQLiteFactory();
            SQLiteConnection  conn = (SQLiteConnection)fact.CreateConnection();

            if (conn != null)
            {
                var connectionStringBuilder =
                    SessionFactoryFactory.SQLiteConnectionStringBuilderFromFilePath(FilePath);
                connectionStringBuilder.Version = 3;

                conn.ConnectionString = connectionStringBuilder.ToString();
                conn.Open();
            }
            return(conn);
        }