Tôi đã cập nhật lên Visual Studio 2015 khi nó được phát hành tuần trước. Resharper gợi ý rằng tôi có thể muốn cập nhật chuỗi sau đây sử dụng string.Format
:TFS sẽ không biên dịch cú pháp nội suy chuỗi
string filePath = HttpContext.Server.MapPath(string.Format("~/App_Data/{0}.xlsx", Guid.NewGuid()));
Để sử dụng chuỗi suy:
string filePath = HttpContext.Server.MapPath($"~/App_Data/{Guid.NewGuid()}.xlsx");
Tôi đã làm điều này, và tất cả là tốt.
Tuy nhiên tôi đã phá vỡ xây dựng trên TFS:
Controller \ MyController.cs (224): nhân vật bất ngờ '$'
Vì vậy, nó có vẻ như các tính năng mới trong C# 6 không thể được biên soạn bởi phiên bản TFS cũ, không cập nhật của chúng tôi.
Dự án vẫn được nhắm mục tiêu sử dụng Framework 4.5 tuy nhiên, tôi chưa nhắm mục tiêu 4.6. Tôi (sai) giả định rằng vẫn nhắm mục tiêu khung cũ sẽ có nghĩa là nó có thể được xây dựng bởi các thành viên khác trong nhóm vẫn sử dụng VS2013 cùng với máy chủ xây dựng TFS của chúng tôi.
Vì vậy, có vẻ như TFS của chúng tôi cần cập nhật ... một cái gì đó.
Tôi cần cài đặt gì trên máy chủ TFS để biên dịch cú pháp mới này? Phiên bản mới nhất của Khuôn khổ .NET hoặc cái gì khác?
Theo tài liệu, .NET 4.6 là không cần thiết, 4.5 phải đủ tốt. Tôi đã không thử nó, mặc dù. – Xenan
Có thể bạn chỉ đơn giản là sử dụng phiên bản sai của MSBuild. bộ điều khiển xây dựng TFS 2013 sẽ không tìm thấy MSBuild 15.0 trên hộp, để sử dụng MSBuild 15.0, bạn sẽ cần phải nâng cấp máy chủ TFS. –
Tôi đã cài đặt ở trên trên máy chủ xây dựng của chúng tôi (2013) nhưng bản dựng của tôi vẫn không thành công. Bạn đã nâng cấp TFS @ bgs264 chưa? – Zenuka