所以我正在研究租赁管理软件。这是一个住宅区,所以经理可以登记租户等付款。为了跟踪付款月份,我将年/月值存储在这样的字段中:
如果是2014年11月 - > MonthPaid = 201411 | 12月将是201412
付款存储在一个表(付款)中,其中包含另一个表(租金)中TenantID的外键,该表还存储了公寓的数量(AptID)。问题是我试图在ListView中显示相应ListView列中的付款(按月)。如果在指定月份没有付款(例如2014年4月4日),那么它现在应该在相应的ListView列(本示例中为Abril)中显示“Deuda”消息。这就是我到目前为止所做的:
http://i.imgur.com/G4Pubkz.jpg
这是预期的结果:
http://i.imgur.com/80oU8cN.jpg
这是我现在正在使用的代码:
using (SQLiteConnection conn = new SQLiteConnection(cs.connstring))
{
using (SQLiteCommand cmd = new SQLiteCommand("select AptID,MonthPaid from Rent inner join Payments on Rent.TenantID = Payments.TenantID", conn))
{
conn.Open();
using (SQLiteDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
ListViewItem item = new ListViewItem(dr["AptID"].ToString());
if (dr["MonthPaid"].ToString() == "20141")
{
item.SubItems.Add(dr["MonthPaid"].ToString());
}
else
{
item.SubItems.Add("Deuda");
}
if (dr["MonthPaid"].ToString() == "20142")
{
item.SubItems.Add(dr["MonthPaid"].ToString());
}
else
{
item.SubItems.Add("Deuda");
}
if (dr["MonthPaid"].ToString() == "20143")
{
item.SubItems.Add(dr["MonthPaid"].ToString());
}
else
{
item.SubItems.Add("Deuda");
}
if (dr["MonthPaid"].ToString() == "20144")
{
item.SubItems.Add(dr["MonthPaid"].ToString());
}
else
{
item.SubItems.Add("Deuda");
}
lstMesesTodos.Items.Add(item);
}
}
}
}
任何建议都将非常感谢!哈哈,如果我刚写的内容有点难以理解,我很抱歉。我希望不是!