2016-09-26 2 views
2

C# 6.0과 string.format에서 도입 된 문자열 보간을 결합 할 수 있는지 궁금합니다. 이런 똑똑한 생각 이라니?문자열 보간 및 string.format 결합

string fancyString = $"My FancyString was created at { DateTime.Now }" + " and I want to add some static with string.format like {0}"; 
+2

* 왜 * 원하십니까? 문자열 보간에서는 불가능한 방법으로 무엇을 할 수 있습니까? – Fabjan

+0

정확히 어떻게 사용 하시겠습니까? 삽입 된 문자열을'String.Format'에 전달 하시겠습니까? – kiziu

+0

당신은이 string.format (fancyString, SomethingToFillYour {0} With)와 같은 보간법 후에 stringformat을 사용할 수 있습니다. 왜 그렇게하고 싶습니까? – Thorarins

답변

3
{0} {{0}}로 작성하여 그렇게 문자열 보간 혼자 잎 탈출

. 그런 다음 에 문자열을 전달하여 {0}을 바꿀 수 있습니다. 이 예는 너무 간단 물론

var urlTemplate = $"<a href='{BaseHref}/some/path/{{0}}'>{{1}}</a>"; 

var homeLink = string.Format(urlTemplate, "home.html", "Home"); 

var aboutLink = string.Format(urlTemplate, "about.html", "About Us"); 

가 보증하는 : 당신이 같은 재사용 가능한 템플릿의 일종을하려는 당신이 할 싶어 왜, 나는 하나의 가능성을 상상할 수 궁금해 사람들을 위해

그런 기술이지만, 매우 많은 수의 변수가있는 템플릿이 있고 한 렌더링 된 템플릿에서 다음 렌더링 된 템플릿으로 변경할 때주의해야합니다. 그러면 템플릿에 {32}, {33}, {34}... 등이있는 것보다 읽기 쉽습니다.