我正在用 C# 编写一个 WinForms 应用程序,目的是从 SQL 服务器上的聚合数据视图中进行选择。重点是使用 System.Windows.Forms.DataVisualization.Charting 命名空间从视图生成图表。
到目前为止,我选择了相关数据库中的视图名称并将它们列出给用户,提示他们选择一个,然后指定哪些列应该放在哪个轴上。我的问题是制定查询以选择适当的视图。该应用程序将仅在内部使用,因此公平地说,注入漏洞并不是什么大问题,但是我真的不想动态构建查询字符串,因为我知道这是一种非常糟糕的做事方式。
我研究了参数化查询和存储过程,但它们不允许您参数化表名(据我所知,这是有充分理由的)。这让我进退两难。我想我可以为所有视图创建存储过程,但这似乎是一个笨拙的解决方案。有没有更好的办法?我应该重新设计整个想法吗?