Ссылка, необходимая для сборки, которая определенно является частью проекта
У меня есть проект, который я в процессе миграции на использование Linq to SQL. В целом все нормально, но я застрял на проблеме, где, если я попытаюсь поместить метку времени из DTO в скрытое поле, я получу эту ошибку во время выполнения:
BC30652: справочные материалы, необходимые для системы сборки.Данные.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089', содержащий тип ' System.Данные.Линк.Двоичный". Добавьте его в свой проект.
У меня определенно есть ссылка на сборка, иначе другие разделы кода не компилировались бы. Я попытался удалить все ссылки и удалить папки bin и obj, но все равно получаю ту же ошибку.
Это происходит на этой строке в разметке:
<asp:HiddenField ID="hfTimestamp" runat="server"
Value='<%#CType(Container.DataItem, CommunicationType).pslTimestamp.TimestampToString() %>' />
Где TimestampToString - это метод расширения, который выглядит следующим образом:
<Extension()> _
Public Function TimestampToString(ByVal binary As Binary) As String
Return BitConverter.ToUInt64(binary.ToArray(), 0).ToString()
End Function
Кто-нибудь видел такое поведение и знает, как его исправить?
1 ответ:
Вы отделяете свою логику в другой сборке? Если это так, то вы также должны ссылаться на него в веб-приложении. Вы можете добавить его в сеть.config
<compilation debug="true"> <assemblies> <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> <add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> </assemblies> </compilation>