2017-05-16 3 views
0

私はエンタテインメントのファーマーワークを初めて利用しています。私は私のエンティティプロパティここ に私の選択値を返すための最良のコードを見つけようとしていることは私のコードです:どのようにselectの値をエンティティの各プロパティに返すことができますか?

private void CustomerForm_Load(object sender, EventArgs e) 
    { 
     if (CustomerID != null && CustomerMode !=(int)CustomerModeOperaton.insert) 
     { 
      using (var Context = new FactorEntities()) 
      { 
        var Customercods = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerCode; 
        _tblCustomer.CustomerCode = Customercods.First(); 
        var Customernames = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerName; 
        _tblCustomer.CustomerName = Customernames.First(); 
        var Customerlastname = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerLastName; 
        _tblCustomer.CustomerLastName = Customerlastname.First(); 
        var customerID = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerID; 
        _tblCustomer.CustomerID = customerID.First(); 
        var customerAddresses = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerAdresse; 
        _tblCustomer.CustomerAdresse = customerAddresses.First(); 
        var customerMobile = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerCellPhone; 
        _tblCustomer.CustomerCellPhone = customerMobile.First(); 
        var customerphone = from _customers in Context.tblCustomers.Where(c => c.CustomerID == CustomerID) select _customers.CustomerPhone; 
        _tblCustomer.CustomerPhone = customerphone.First(); 

      } 

     } 

     LoadDataToControl(); 
} 

が、私はこのコードを使用している場合、私は良いされていないいくつかの選択を使用する必要が思っていました選択した値がnullの場合はどうすればよいですか? 例えば、このコードは:

_tblCustomer.CustomerPhone = customerphone.First(); 

答えて

0

あなたは一度だけ顧客のために照会する必要があり、それは一つのオブジェクト内のすべてのお客様の情報を返してみましょう。次に、_tblCustomerフィールドへの割り当てに対して、そのオブジェクトのプロパティを参照するだけです。

あなたがFirstOrDefaultを使用する場合は、あなただけ返されるオブジェクトは(CustomerIDマッチ1のためのあなたの検索一切の顧客が存在しない場合には)それを使用しようとする前に、nullでないことを確認することができます。

var customer = Context.tblCustomers.FirstOrDefault(c => c.CustomerID == CustomerID); 

if (customer != null) 
{ 
    _tblCustomer.CustomerCode = customer.CustomerCode; 
    _tblCustomer.CustomerName = customer.CustomerName; 
    _tblCustomer.CustomerLastName = customer.CustomerLastName; 
    _tblCustomer.CustomerID = customer.CustomerID; 
    _tblCustomer.CustomerAdresse = customer.CustomerAdresse; 
    _tblCustomer.CustomerCellPhone = customer.CustomerCellPhone; 
    _tblCustomer.CustomerPhone = customer.CustomerPhone; 
} 
+0

おかげで親愛なる@Rufus L –

関連する問題