Technika (brudna sztuczka?), którą teraz gram, polega na skopiowaniu mojego źródła danych (.rds
) do każdego projektu, zamknij Visual Studio, a następnie w odpowiednich plikach/folderach:
- Usuń skopiowany plik
.rds
z moich projektów raportów (pozostawiając tylko jedną kopię w moichData Sources
projekt) - W każdym pliku projektu raportu (
Foo.rptproj
), zmień tekstProject.DataSources.ProjectItem.FullPath
element zMy Shared Data Source.rds
do..\Data Sources\My Shared Data Source.rds
W ten sposób wszystkie projekty raportowania odwołują się do tego samego bazowego pliku w systemie plików, więc współdzielą jedną definicję źródła danych, ale każdy projekt ma także „lokalne” udostępnione źródło danych, więc program Visual Studio jest zadowolony.
Odnośnie kontroli źródła:wciąż istnieje tylko jedna kopia pliku .rds
zaewidencjonowane, więc nie zanieczyszczamy bazy kodu dużą ilością icky duplikatów; zmiany w .rptproj
pliki można zaewidencjonować, więc nie zmuszamy programistów do nienaturalnej gimnastyki kontroli źródła (selektywne częściowe zatwierdzenia itp.), aby zachować rozsądną kopię główną.
Każdy projekt raportujący będzie próbował wdrożyć to źródło danych, chociaż zabroniłem nadpisywania istniejących źródeł danych na serwerze, więc nie jest to zbyt wielka sprawa. . . i przypuszczam, że gdybym zamierzał nadpisać definicję źródła danych serwera, nie miałoby znaczenia, czy nadpisałem ją raz, czy dziesięć razy tym samym .rds
.
Zastrzeżenie:to wciąż eksperyment. Nie mam jeszcze doświadczenia w stosowaniu tej techniki w praktyce, więc nie mogę posunąć się tak daleko, aby faktycznie ją polecić.