Tôi vẫn đang cố gắng làm quen với những điều MSBuild. Hiện tại tôi đang quan tâm đến việc triển khai thông qua tập lệnh PowerShell bằng cách sử dụng tập lệnh được tạo từ PackageWeb-Nuget-Package (video demo). Tôi đã cố gắng mà ra cho một vài ngày nay và nó dường như làm việc. Tuy nhiên, "đột nhiên" chuỗi kết nối trong web.config tạo được tokenized và thay vì chuỗi kết nối trong câu hỏi tôi thấyLà "AutoParameterizationWebConfigConnectionStrings" -option cách duy nhất để ngăn chặn tokenization chuỗi kết nối?
connectionString="$(ReplacableToken_DefaultConnection-Web.config Connection String_0)
tôi đã viết "đột nhiên" bởi vì tôi không thể liên kết này (đối với tôi mới) hành vi để bất cứ điều gì tôi đã làm trong những giờ trước.
Vì vậy, để tổng hợp nó: Việc triển khai từ gói đang làm việc tốt, cũng là chuyển đổi cấu hình chính xác đang được áp dụng, nhưng tôi kết thúc với chuỗi kết nối được mã hóa này.
Tôi nhận ra rằng tôi có thể sửa lỗi này nếu tôi chèn
<AutoParameterizationWebConfigConnectionStrings>false</AutoParameterizationWebConfigConnectionStrings>
thành một PropertyGroup (Tôi chỉ cần đặt nó vào trong tạo ra các mục tiêu-file rằng NuGet-Package tạo)
Tuy nhiên tôi thực sự không thích điều này, phải chèn thêm giá trị này vào mỗi dự án có thể cần nó; đặc biệt là vì tôi không biết tôi cần điều chỉnh này ngay từ đầu. Hôm qua nó đã làm việc và tôi không có thêm dòng này chèn vào bất kỳ dự án hoặc tập tin mục tiêu.
Vì vậy, tôi đã hy vọng rằng có thể ai đó biết một chuyển đổi bổ sung, lừa hoặc thiết lập có thể có ảnh hưởng bổ sung về cách thức hoạt động của nó.
Đây là cũ, nhưng bạn có muốn chia sẻ những phát hiện của mình về cách bạn đã làm mà không chỉ định thuộc tính loooooog này trong tệp * proj? – ostati
@Ostati Thành thực mà nói, tôi không "giải quyết" tại bất kỳ thời điểm nào - thuộc tính 'AutoParameterizationWebConfigConnectionStrings = false' vẫn là một phần của quá trình triển khai của tôi; mặc dù tôi đã không gặp bất kỳ vấn đề gì với điều đó, bên cạnh esthetically, tôi cũng sẽ vẫn rất quan tâm nếu điều này có thể được phá vỡ trong bất kỳ cách nào. – DrCopyPaste
@Ostati Để thêm vào đó, điều chính mà tôi không thích về điều này là phải sửa đổi từng dự án ('s proj-file) cho điều đó; tuy nhiên bạn không phải làm điều đó, bạn có thể chuyển các thuộc tính thành các tham số tới 'msbuild' - bằng cách đó bạn ghi đè các thuộc tính hiện có trong các tệp proj của bạn hoặc thêm các thuộc tính mới mà bạn cần (giống như' AutoParameterizationWebConfigConnectionStrings') hy vọng điều này sẽ giúp bạn ;) (ví dụ: http://stackoverflow.com/a/6052146/2186023) – DrCopyPaste