在命令文本中对实体数据源进行排序

sort entity data source in command text

数据库 Oracle 11g:我有 2 table 加入(用户,评论),在用户 table 中有主键 User_ID 和名称,在评论 table 中有FK User_ID 和文本。 我想使用 EntityDataSource 在 GridView 中显示名称和文本,它工作正常,但是当我在 GridView 中进行排序时,它没有显示正确的名称排序,因为名称有大写和小写,就像我在 GridView 中进行排序时这样:

  NAME
Ahmed ali
Bobby baby
ahmed ali
boby baby

我想这样(每个单词的首字母排序并大写):

  NAME
Ahmed Ali
Ahmed Ali
Bobby Baby
Bobby Baby

我的 EntityDataSource 是这样的:

 <asp:EntityDataSource ID="***" runat="server"
                       ConnectionString="***"
                       DefaultContainerName="***"
                       EnableFlattening="False"
                       CommandText="select it.[NAME], co.[TEXT] from USER as it, COMMENT as co where it.[User_ID] = co.[User_ID]">
 </asp:EntityDataSource>

我不确定哪一列是 'A, A, B, B' 但为了示例的动摇我假设它是 'it.[NAME]'

将命令文本更改为以下内容:

 CommandText="select UPPER(it.[NAME]), co.[TEXT] from USER as it, COMMENT as co where it.[User_ID] = co.[User_ID] order by UPPER(it.[NAME])">