我需要知道如何修改一個sql,添加到每一個select sql代碼中。 我的問題是,我需要在「FROM table」+「sql_code」之後添加此sql代碼,即使「像GROUP BY」之後有某種東西。修改NHibernate中的SQL
我知道我需要使用OnPrepareStatement,我只是不知道如何編輯SqlString來這麼做!
有一兩件事,我已經試過:
public override SqlString OnPrepareStatement(SqlString sql)
{
if (sql.Parts.Cast<string>().FirstOrDefault().Trim().ToLower() != "select")
{
return sql;
}
StringBuilder novaString = new StringBuilder(sql.ToString());
String corte = sql.SubstringStartingWithLast("where").ToString();
if (corte != "")
{
StringBuilder sb = new StringBuilder(corte);
sb.Insert(0, "with(nolock) ");
novaString.Replace(corte, sb.ToString());
}
else
{
novaString.Append(" with(nolock)");
}
return new SqlString(novaString.ToString());
}
謝謝!
我不知道這意味着什麼。我會的,對不起! – Leonardo 2012-03-31 15:12:51
他意味着你需要在每個你以前的問題中標記一個答案爲「接受」,即如果有答案並且他們有幫助。 – gdp 2012-03-31 17:37:40
是的,我得到了那部分!你對我的問題有任何想法嗎?多謝你們 ! – Leonardo 2012-04-01 05:19:12