可以';t使用实体框架5从数据库中读取

本文关键字:框架 数据库 读取 实体 可以 | 更新日期: 2023-09-27 18:26:00

我试图使用实体框架从数据库中读取记录,这是我以前从未使用过的。

我正在尝试运行加载规则方法:

class Rule
    {
        private STRATCODE stratCode;
        private STRATRULEDEF stratRuleDef;
        AREEntities AREDb = new AREEntities();
        public Rule(STRATRULEDEF StratRuleDef, STRATCODE StratCode)
        {
            this.stratRuleDef = StratRuleDef;
            this.stratCode = StratCode;    
        }
        public void LoadRule()
        {
            var query = from stratCode in AREDb.STRATCODES
                        where stratCode.CODEVALUE == "49300"
                        select stratCode;
            //StratCodeRepository StratCodeRepository = new StratCodeRepository(new AREEntities());
            using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:'Users'user'Desktop'NewText.txt",true))
            {
                foreach (STRATCODE row in query)
                {
                    file.WriteLine("{0} | {1} | {2} | {3} | {4} | {5}", stratCode.STRATRULEKEY, stratCode.CODETYPE, stratCode.CODEVALUE, stratCode.SYSTEMID, stratCode.CODESETKEY, stratCode.PAYMENTYEAR);
                }
            }
        }

我的问题是,每次运行它时,它都会返回正确数量的记录,但文本文件中的所有数据都是空的,我在输出日志中找不到任何线索。

0 |  |  |  |  | 
0 |  |  |  |  | 
0 |  |  |  |  | 
0 |  |  |  |  | 
0 |  |  |  |  | 

有什么想法吗?我甚至不知道如何在没有线索的情况下开始

可以';t使用实体框架5从数据库中读取

您的写入没有使用foreach变量:

    using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:'Users'stephen.carmody'Desktop'NewText.txt", true))
    {
        foreach (var row in query)
        {
            file.WriteLine("{0} | {1} | {2} | {3} | {4} | {5}",
                row.STRATRULEKEY,
                row.CODETYPE, 
                row.CODEVALUE, 
                row.SYSTEMID, 
                row.CODESETKEY, 
                row.PAYMENTYEAR);
        }
    }