示例#1
0
        public static ChatMessage FromDbDataRecord(DbDataRecord record)
        {
            ChatMessage msg = new ChatMessage(record.GetString(C_SENDER),
                                              record.GetString(C_BODY), DateTime.Parse(record.GetString(C_DATE)),
                                              record.GetString(C_ID), SqlDatabase.StringOrNull(record, C_EDIT));

            return(msg);
        }
        public static string GetString(this DbDataRecord dr, string columnName)
        {
            Check.ArgNotNull(dr, nameof(dr));
            int ordinal = dr.GetOrdinal(columnName);

            return(dr.GetString(ordinal));
        }
示例#3
0
 public static string StringOrNull(DbDataRecord reader, int column)
 {
     if (reader.IsDBNull(column))
     {
         return(null);
     }
     else
     {
         return(reader.GetString(column));
     }
 }
示例#4
0
        public Film ConvertRecordToFilm(DbDataRecord rec)
        {
            if (rec == null || rec.FieldCount < filmRecFieldCount)
            {
                return(null);
            }

            var film = new Film
            {
                Id         = rec.GetInt32((int)FilmColumns.Id),
                Picture    = GetImageFromDbRec(rec.GetString((int)FilmColumns.Picture)),
                Name       = rec.GetString((int)FilmColumns.Name),
                Country    = rec.GetString((int)FilmColumns.Country),
                Year       = rec.GetInt32((int)FilmColumns.Year),
                Producer   = new Producer(rec.GetString((int)FilmColumns.Producer)),
                MainActors = new List <Actor>()
            };


            return(film);
        }
示例#5
0
        public static Roomdata FromDbDataRecord(DbDataRecord record)
        {
            Roomdata r = new Roomdata(record.GetString(COL_ROOM));

            r.LastMessageDt   = SqlDatabase.StringOrNull(record, COL_LASTMESSAGEDT);
            r.Subject         = SqlDatabase.StringOrNull(record, COL_SUBJECT);
            r.DoJoin          = (JoinMode)record.GetInt32(COL_DO_JOIN);
            r.DisplayName     = SqlDatabase.StringOrNull(record, COL_DISPLAY_NAME);
            r.LastSeenDt      = SqlDatabase.StringOrNull(record, COL_LASTSEENDT);
            r.Notify          = (NotifyMode)record.GetInt32(COL_NOTIFY);
            r.DisplayPosition = record.GetInt32(COL_DISPLAY_POSITION);
            return(r);
        }
示例#6
0
        public ActorToFilm ConvertRecordToActorToFilm(DbDataRecord rec)
        {
            if (rec == null || rec.FieldCount < actorToFilmFieldCount)
            {
                return(null);
            }

            var actorToFilm = new ActorToFilm
            {
                FilmId = rec.GetInt32((int)ActorToFilmColumn.FilmId),
                Actor  = new Actor(rec.GetString((int)ActorToFilmColumn.ActorName))
            };

            return(actorToFilm);
        }
示例#7
0
        //Entity Provider
        private static void PrintEntityResults(DbConnection conn, DbCommand cmd,
                                               string commandText)
        {
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = commandText;
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            var dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess);

            while (dr.Read())
            {
                DbDataRecord record = (DbDataRecord)dr[0];
                Console.WriteLine(record.GetInt32(0) + ": " + record.GetString(1));
            }
        }
示例#8
0
    // <Snippet1>
    public static void Main()
    {
        try
        {
            DataTable userTable = new DataTable("peopleTable");

            userTable.Columns.Add("Id", typeof(int));
            userTable.Columns.Add("Name", typeof(string));

            // Note that even if you create the DataTableReader
            // before adding the rows, the enumerator can still
            // visit all the rows.
            DataTableReader reader = userTable.CreateDataReader();
            userTable.Rows.Add(new object[] { 1, "Peter" });
            userTable.Rows.Add(new object[] { 2, "Mary" });
            userTable.Rows.Add(new object[] { 3, "Andy" });
            userTable.Rows.Add(new object[] { 4, "Russ" });

            IEnumerator enumerator = reader.GetEnumerator();
            // Keep track of whether the row to be deleted
            // has actually been deleted yet. This allows
            // this sample to demonstrate that the enumerator
            // is able to survive row deletion.
            bool isRowDeleted = false;
            while (enumerator.MoveNext())
            {
                DbDataRecord dataRecord = (DbDataRecord)enumerator.Current;

                // While the enumerator is active, delete a row.
                // This doesn't affect the behavior of the enumerator.
                if (!isRowDeleted)
                {
                    isRowDeleted = true;
                    userTable.Rows[2].Delete();
                }
                Console.WriteLine(dataRecord.GetString(1));
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex);
        }
        Console.ReadLine();
    }
示例#9
0
        public void GetEnumeratorTest()
        {
            this.fixture.ExecuteCommand(command => {
                command.CommandText = "SELECT * FROM ORDERS";
                using (var reader = command.ExecuteReader()) {
                    IEnumerator enumerator = reader.GetEnumerator();

                    while (enumerator.MoveNext())
                    {
                        DbDataRecord record = (DbDataRecord)enumerator.Current;
                        Assert.Equal(reader.FieldCount, record.FieldCount);
                        Assert.Equal(reader.GetInt32(0), record.GetInt32(0));
                        Assert.Equal(reader.GetString(1), record.GetString(1));
                        Assert.Equal(reader.GetInt32(2), record.GetInt32(2));
                        Assert.Equal(reader.GetDateTime(3), record.GetDateTime(3));
                        Assert.Equal(reader.GetDateTime(4), record.GetDateTime(4));
                        Assert.Equal(reader.GetValue(5), record.GetValue(5));
                        Assert.Equal(reader.GetInt32(6), record.GetInt32(6));
                        Assert.Equal(reader.GetDecimal(7), record.GetDecimal(7));
                        reader.Read();
                    }
                }
            });
        }
        //*****************************************************************************
        // Method: ShowSubmissionDetails
        //
        // Purpose: Set textbox text's of the selected submission object
        //*****************************************************************************
        private void ShowSubmissionDetails(DbDataRecord record)
        {
            // Setup the SQL command
            string     sql     = "SELECT * FROM Submission WHERE AssignmentName = '" + record.GetString(0) + "';";
            SqlCommand command = new SqlCommand(sql, sqlConn);

            // Retrieve the data from the database
            SqlDataReader reader = command.ExecuteReader();

            if (reader.HasRows)
            {
                while (reader.Read())
                {
                    // set text fields
                    assignmentTextBox.Text = reader.GetString(0);
                    categoryTextBox.Text   = reader.GetString(1);
                    gradeTextBox.Text      = reader.GetDouble(2).ToString();
                }
            }
        }