2011-09-27 3 views
2

단일 확장 메서드를 사용하여 내 웹 사이트 전체에 stylesheet/javascript 링크를 생성하므로 쿼리 문자열을 생성 할 수 있습니다.정적 콘텐츠 용 QueryString Param 생성 애플리케이션 당 한 번

예는

내가 새로운 빌드를 수행 할 때 계획은

http://mydomain.com/site.css?v0.0.1

, 내용은 서버에서 갓 꺼낼 필요. 거기에 놀라움이 없습니다.

그러나이 값을 생성하는 가장 좋은 방법을 찾으려고합니다.

분명히, 이상적으로 MSBuild 작업을 수행하는 것이 가장 이상적이지만, 과거에는 시도해 보았지만 실패했습니다.

대부분의 정적 컨텐츠에 대해 SquishIt을 사용하고 있지만 번들에없는 파일 (예 : 모든 페이지에서 필요하지 않은 파일)의 경우 파일에 대한 쿼리 문자열 매개 변수를 생성해야합니다.

나는 앱 시작시 싱글 톤 guid를 만든 다음 링크를 생성 할 때이를 사용한다고 생각하고 있습니다.

생각하십니까?

+1

어셈블리의 버전이나 날짜를 사용하는 것이 좋지 않습니까? http://stackoverflow.com/questions/324245/asp-net-show-application-build-date-info-at-the-bottom-of-the-screen – Giedrius

답변

0

및 살펴 보셔야합니다 어쩌면 내 js/css에 URL을 작성하는 데 사용하십시오. 모든 릴리스 (내부 또는 외부)의 버전 번호를 변경하여 매력처럼 작동합니다.

+0

그래서 한 번에 읽으면 어디에서 저장합니까? 일부 전역 클래스의 (정적) 인스턴스입니까? – RPM1984

+0

@ RPM1984, 예 - URL을 구성하는 메소드를 포함하는 정적 유틸리티 클래스의 개인 정적 변수. – VinayC

0

Open-source components used in learn.knockoutjs.com에 대한 스티븐 샌더슨의 블로그 게시물에 대해 Knapsack에 대해 알게되었습니다. 내가 아주 확실하지 않다 ,하지만 당신은 빠른 워크를 통해 한번 어셈블리 또는 응용 프로그램 버전을 읽는 선호 (중 app_start 또는 도우미 메서드에 게으른 로딩을)

+0

하지만 js/css를 번들로 묶어 놓은 것입니다. 착각하지 마라. 이미 SquishIt을 사용하고 있습니다. 나는 번들에있는 파일을 원하지 않지만 현재 빌드를 위해 캐시 된 인스턴스에 대해 이야기하고있다. 메신저에 뭔가 빠진 게 아니라면 요? – RPM1984

관련 문제