• Подключение WPF к SQL Compact

    Всем спасибо. Задача решена. Вот как надо было сделать:

    public class StoreDB
        {
            public Product GetProduct(int ID)
            {
                SqlCeConnection con = new SqlCeConnection("Data Source = Database1.sdf");
                //SqlCeCommand cmd = new SqlCeCommand ("SELECT * FROM Products WHERE (nume LIKE ?)", con);
                SqlCeCommand cmd = con.CreateCommand();
                cmd.CommandText = "SELECT * FROM Products WHERE (ProductID LIKE ?)";
                cmd.Parameters.Add("ProductID", ID);
                try
                {
                    con.Open ();
                    SqlCeDataReader reader = cmd.ExecuteReader();
                    if (reader.Read())
                    {
                        Product product = new Product((string)reader["ModelNumber"],
                        (string)reader["ModelName"], (decimal)reader["UnitCost"],
                        (string)reader["Description"]);
                        reader.Close();
                        cmd.Dispose();
                        return (product);
                    }
                    else
                    {
                        return null;
                    }
                }
                finally
                {
                    con.Close();
                }
            }
        }

  • Подключение WPF к SQL Compact

    Пример взят из книги «WPF в.Net 3.5 с примерами на C# 2008». Но там используется SQL Server, а мне нужно переделать в SQL Compact. Вот оригинальный текст:

    public class StoreDB
        {
            private string connectionString = Properties.Settings.Default.StoreDatabase;
    
    public Product GetProduct(int ID)
            {
                SqlConnection con = new SqlConnection(connectionString);
                SqlCommand cmd = new SqlCommand ("GetProductBylD", con);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue ("@ProductID", ID) ;
                try
                {
                    con.Open ();
                    SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.SingleRow);
                    if (reader.Read())
                    {
                        // Создать объект Product, помещающий
                        //в оболочку текущую запись.
                        Product product = new Product((string)reader["ModelNumber"],
                        (string)reader["ModelName"], (decimal)reader["UnitCost"],
                        (string)reader["Description"],
                        (string)reader["ProductImage"]);
                        return(product);
                    }
                    else
                    {
                        return null;
                    }
                }
                finally
                {
                    con.Close();
                }
            }
        }