Какую базу данных вы используете? обычно вы не сохраняете файлы в базе данных, но я думаю, что sql 2008 поддерживает его ...
Файл представляет собой двоичные данные, поэтому UTF 8 здесь не имеет значения.
UTF 8 имеет значение, когда вы пытаетесь преобразовать строку в массив байтов ... не файл в байтовый массив.
У меня была эта проблема о сервере, который я развертывал на и решил, что мне не было нужно
Microsoft. CodeDom. Поставщики. DotNetCompilerPlatform
Так, я удалил его через самородок и удалил ссылку в веб-конфигурации. Больше никаких проблем.
я первоначально попробовал к добавленному целевому узлу в .proj файл, как упомянуто в некоторых из других ответов, но которые просто приводят к другой ошибке, где эти msbuild
не мог скопировать pagefile.sys
, который казался, из какого я читал, чтобы быть ошибкой в пакете самородка.
В первую очередь, вот код, который воспроизводит ошибку: http://schulze.000webhostapp.com/vs/SrvrErr-reproduce.zip (Первоначально от [1 115] https://GitHub. com/aspnet/AspNetDocs/tree/master/aspnet/web-api/overview/advanced/calling-a-web-api-from-a-net-client/sample/server/ProductsApp)
Вместо того, чтобы использовать диспетчер пакетов (как предложено andy250/SmoljГЎr) для выполнения
Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r
можно удалить атрибут файла проекта Web.config
.
(Web.config
находится в том же каталоге как Ваш .csproj
файл.)
Открываются Web.config
файл в текстовом редакторе (или в Visual Studio).
- В теге configuration | system.codedom | compilers | compiler language="c#;cs;csharp"
, полностью удалите эти type
атрибут.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!-- ... -->
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
</compilers>
</system.codedom>
</configuration>
Короче говоря, удалите строку, которая запускается с type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft
.
(По-видимому, то же фиксирует работы для Visual Basic, а также для До-диеза, но я не попробовал его.)
Visual Studio будет заботиться об остальных. Больше никакой Server Error in '/' Application
.
В примере кода я обеспечил в zip-файле выше Вас, теперь доберется HTTP Error 403
, когда Вы поражаете Ctrl + F5 .
Попытка, заменяющая http://localhost:64195
в Вашем веб-браузере с [1 112].
веб-API теперь отображается, как он должен:
Как провокация, я даже пытался удалить целое package
каталог моего решения для Visual Studio.
Это было автоматически и тихо воссоздано, как только я (пере-) создал его.
В моей ситуации наши команды не хотят сохранять папку 'пакетов', таким образом, мы помещаем весь dlls в другой каталог как 'sharedlib'.
я использовал событие сборки для решения этой проблемы.
if "$(ConfigurationName)" == "Release" (
goto :release
) else (
goto:exit
)
:release
if not exist $(TargetDir)\roslyn mkdir $(TargetDir)\roslyn
copy /Y "$(ProjectDir)..\..\Shared Lib\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1\tools\Roslyn45\*" "$(TargetDir)\roslyn"
goto :exit
:exit
Ни один из других ответов не работал на меня. После выполнения папки выдерживают сравнение, прежде/после того, как по сравнению с моими ожидаемыми зафиксированными файлами, я обнаружил, что МЕРЗАВЕЦ игнорировал необходимую папку. При отслеживании компилятора в репозитории удостоверьтесь, что папка BUILD прослежена. Если это не будет, то компилятор никогда не будет создаваться и бросит эту точную ошибку после того, как опубликуют. Я добавил эту строку к моему файл .gitignore :
!**/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1/build/
и теперь это развертывается к другим компьютерам правильно.
$(selector).addClass('blah')
– zgr024 5 June 2013 в 04:14