Как мне сказать NAnt использовать тот же компилятор VB, который VS2008 использует при создании приложений для .NET 2.0?
Я переключил веб-приложение на VS2008 с обратным таргетингом на .NET 2.0. Я могу нормально запустить NAnt (0.85rc4, 0.85 и 0.86b1), как только сделаю это. Когда я пытаюсь использовать какой-то синтаксис VB9, который по-прежнему отлично компилируется обратно в двоичный файл .NET 2.0 в VS2008, NAnt получает ошибку компиляции, которую вы получили бы, если бы попытались выполнить новый синтаксис в VS2005 (где это не было не поддерживается).
В случае, если это поможет, вот упрощенная версия того, что я пытаюсь сделать, простой анонимный делегат, который отлично работает, пока я не попытаюсь использовать NAnt для создания приложения 2.0 вместо VS2008.
Public Class SomeObject
Public Name As String
End Class
Private SomeList As List(Of SomeObject) = SomeObject.GetAllSomeObjects()
Public Function FindFirstItemWithSimilarName(ByVal x As String) As SomeObject
Return SomeList.Find(Function(p As SomeObject) p.Name.Contains(x))
End Function
РЕДАКТИРОВАТЬ: Если кто-то не может придумать причину не делать этого, текущая настройка в моем файле сборки такова (поскольку мне действительно нужно приложение .NET 2.0, только одно, созданное более надежным компилятором VB) :
<property name="nant.settings.currentframework" value="net-2.0"/>