Сообщение Re[5]: String templates (JEP 430) от 02.08.2023 19:43
Изменено 05.09.2023 7:55 Jack128
Опечатка
Re[5]: String templates (JEP 430)
Здравствуйте, ·, Вы писали:
·>Здравствуйте, samius, Вы писали:
S>>
·>Ещё раз. Это даст строку. Неясно как из этого получить объект произвольного типа.
Строка — это просто вариант по умолчанию. В общем случае ты можешь написать свой InterpolatedStringHandler и заиметь полный того, что в заглавном посте для джавы было написано.
·>Здравствуйте, samius, Вы писали:
S>>
S>>var provider = new MyCustomSqlFormatProvider();
S>>FormattableString sql = $"SELECT * FROM SomeTable WHERE Age = {age} and Name = {name}";
S>>var safeSqlString = sql.ToString(provider);
S>>
·>Ещё раз. Это даст строку. Неясно как из этого получить объект произвольного типа.
Строка — это просто вариант по умолчанию. В общем случае ты можешь написать свой InterpolatedStringHandler и заиметь полный того, что в заглавном посте для джавы было написано.
DbDataReader reader = DB.ExecuteToReader($"SELECT * FROM Person p WHERE p.last_name = {name}"); // будет сгенерён sql c параметром
Re[5]: String templates (JEP 430)
Здравствуйте, ·, Вы писали:
·>Здравствуйте, samius, Вы писали:
S>>
·>Ещё раз. Это даст строку. Неясно как из этого получить объект произвольного типа.
Строка — это просто вариант по умолчанию. В общем случае ты можешь написать свой InterpolatedStringHandler и заиметь полный аналог того, что в заглавном посте для джавы было написано.
·>Здравствуйте, samius, Вы писали:
S>>
S>>var provider = new MyCustomSqlFormatProvider();
S>>FormattableString sql = $"SELECT * FROM SomeTable WHERE Age = {age} and Name = {name}";
S>>var safeSqlString = sql.ToString(provider);
S>>
·>Ещё раз. Это даст строку. Неясно как из этого получить объект произвольного типа.
Строка — это просто вариант по умолчанию. В общем случае ты можешь написать свой InterpolatedStringHandler и заиметь полный аналог того, что в заглавном посте для джавы было написано.
DbDataReader reader = DB.ExecuteToReader($"SELECT * FROM Person p WHERE p.last_name = {name}"); // будет сгенерён sql c параметром