예제 #1
0
        //
        // Called from AddSymbol_ViewModel when a contract was selected from list, will add it to the listview
        // then will subscribe to receive TWS real time (5s) data.
        //
        private async void AddSymbol_VM_ContractSelected_Event(object sender, ContractDetailsRecv_EventArgs e)
        {
            ContractData cd = new ContractData(e.ContractDetails.Contract);

            Start(cd);

            DB_ModelContainer db = new DB_ModelContainer();

            db.DisplayedContracts.Add(cd);
            await db.SaveChangesAsync();
        }
예제 #2
0
        public async Task DeleteFromDB()
        {
            DB_ModelContainer db = new DB_ModelContainer();

            ContractData cData = db.DisplayedContracts.FirstOrDefault(c => c.Symbol == ContractDetails.Contract.Symbol &&
                                                                      c.SecType == ContractDetails.Contract.SecType);

            if (cData != null)
            {
                db.DisplayedContracts.Remove(cData);
                await db.SaveChangesAsync();

                ContractRemoved_Event?.Invoke(this, EventArgs.Empty);
            }
        }
예제 #3
0
        public async void SaveToDB()
        {
            DB_ModelContainer db = new DB_ModelContainer();

            ContractData cData = db.DisplayedContracts.FirstOrDefault(c => c.Symbol == ContractDetails.Contract.Symbol &&
                                                                      c.SecType == ContractDetails.Contract.SecType);

            if (cData == null)
            {
                ContractData cd = new ContractData(ContractDetails.Contract);

                db.DisplayedContracts.Add(cd);
                await db.SaveChangesAsync();
            }
        }