如果您对c#–使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于c#–使用
如果您对c# – 使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于c# – 使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件的详细内容,我们还将为您解答c# helpprovider的相关问题,并且为您提供关于.net – 如何在使用Microsoft.Build.Evaluation(MSBuild)构建之前执行清理、asp.net – 在Microsoft Ajax中伪造__EVENTVALIDATION、asp.net-mvc – 在Mono 2.4上使用Microsoft Data Entity Framework和Microsoft MVC、c# – 使用MSBuild构建.csproj而不使用项目引用的有价值信息。
本文目录一览:- c# – 使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件(c# helpprovider)
- .net – 如何在使用Microsoft.Build.Evaluation(MSBuild)构建之前执行清理
- asp.net – 在Microsoft Ajax中伪造__EVENTVALIDATION
- asp.net-mvc – 在Mono 2.4上使用Microsoft Data Entity Framework和Microsoft MVC
- c# – 使用MSBuild构建.csproj而不使用项目引用
c# – 使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件(c# helpprovider)
我发现了这段代码,但不幸的是引擎类被折旧了.
Engine engine = new Engine() Project project = new Project(engine); project.Load("myproject.csproj"); project.SetProperty("SignAssembly","true"); project.Save("myproject.csproj");
所以我继续根据提示我应该使用Evaluation.ProjectCollection而不是Engine:
var collection = new ProjectCollection(); collection.DefaultToolsversion = "4.0"; var project = new Project(collection); // project.Load("myproject.csproj") There is NO Load method :-( project.FullPath = "myproject.csproj"; // Instead of load? Does nothing... // ... modify the project project.Save(); // Interestingly there is a Save() method
没有Load方法了.我试图设置属性FullPath,但项目似乎仍然是空的.错过了什么?
(请注意我知道.csproj文件是带有XSD架构的标准XML文件,我知道我们可以使用XDocument或XmlDocument来读/写它.这是一个备份计划.只需看看.Save()方法就可以了.项目类我认为如果我无法加载现有的.csproj,我会错过一些东西.thx)
解决方法
我们应该使用ProjectCollection类的工厂方法,而不是创建一个新的Project(…)并尝试.Load(…)它.
// Instead of: // var project = new Project(collection); // project.FullPath = "myproject.csproj"; // Instead of load? Does nothing... // use this: var project = collection.LoadProject("myproject.csproj")
.net – 如何在使用Microsoft.Build.Evaluation(MSBuild)构建之前执行清理
Private Shared _globalProp As Dictionary(Of String,String) Private Shared _logger As BuildLogger Dim thisProject As Project = nothing Dim buildSuceeded As Boolean If _globalProp Is nothing Then _globalProp = New Dictionary(Of String,String) _globalProp.Add("Configuration","Release") _globalProp.Add("Platform","x86") End If _logger = New BuildLogger thisProject = New Project(projectFilename,_globalProp,"14.0") buildSuceeded = thisProject.Build(_logger)
解决方法
我似乎无法找到同时接受目标和记录器的Build方法的适当重载,所以我现在分两步执行此操作,这似乎做我想要的:
thisProject = New Project(projectFilename,"14.0") Dim targets As String() = {"Clean"} cleanSucceeded = thisProject.Build(targets) buildSuceeded = thisProject.Build(_logger)
asp.net – 在Microsoft Ajax中伪造__EVENTVALIDATION
该网站只能使用Ajax,但要伪造这些请求并刮掉我需要伪造__EVENTVALIDATION帖子字段的网站.
我对网站没有任何控制权,而且我从未使用ASP.NET或Microsoft Ajax构建任何东西.
有没有人这样做过?
我发现__EVENTVALIDATION字段有这种模式(…表示字节根据请求,base64解码版本的hexdump而改变):
d8 01 16 13 02 4f 0a ... f6 e0 84 d4 05 02 a0 3f e2 3f 03 02 3f d8 d1 d5 0c 02 bb 82 cf ec 08 02 b4 b5 99 f8 0b 02 3f 89 3f eb 04 02 d5 83 90 88 0a 02 8a db 94 90 03 02 8b cf 3f 85 08 02 93 3f b1 3f 06 02 9b 3f 8f a5 02 02 b5 b4 af 85 01 02 d1 fc ae 9c 0e 02 b4 e2 94 9e 0a 02 3f e2 94 9e 0a 02 3f e2 94 9e 0a 02 bb 92 80 a5 06 ...
解决方法
例如,如果您正在从表单提交中抓取响应:
>为表单所在的页面发出AJAX请求
>从响应中提取视图状态和事件验证哈希
>创建一个模拟表单提交的新AJAX请求,将哈希作为参数传递
如果你正在寻找JavaScript函数来从标记中提取哈希,我已经在GitHub上发布了我用作ms-viewstate的那些.
asp.net-mvc – 在Mono 2.4上使用Microsoft Data Entity Framework和Microsoft MVC
我创建了一个简单的MVC tutioal applciation,链接了here,并验证它使用了所有Microsoft工具.
接下来,应用程序更新为指向在我的Ubiquity主机上运行的MysqL服务器数据库.该应用程序在基于Microsoft的计算机上运行良好.
现在,我正在尝试将应用程序部署到Ubiquity上的单声道服务器.
我设置System.Web.MVC,因此它将copyLocal = true.
我将应用程序部署到单声道服务器.
我收到此错误:
描述:解析为此请求提供服务所需的资源时出错.检查您的源文件并对其进行修改以修复此错误.
分析器错误消息:程序集System.Data.Entity,版本= 3.5.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089未找到
版本信息:单声道版本:2.0.50727.1433; ASP.NET版本:2.0.50727.1433
我猜这个问题可能是……
A)单声道不支持实体框架.我需要使用Microsoft Data Entity Framework之外的其他东西.
B)单声道版本的System.Data.Entity的公钥令牌不是“b77a5c561934e089”.
C)还有其他事情发生.
我尝试为System.Entity.Data dll设置copyLocal = true.因此,部署到我的单声道服务器的Microsoft版本的DLL.我怀疑这是合法的.无论如何,这只会产生以下错误:
Got a SIGSEGV while executing native code. This usually indicates
a Fatal error in the mono runtime or one of the native libraries
used by your application.
题
有人可以确认可以在Mono上使用Microsoft Entity Framework吗?根据上面链接的Microsoft MVC教程中的这个评论,我可能会迁移远离Microsoft Entity Framework.
“The ASP.NET MVC framework is not tied to the Microsoft Entity Framework. You can create >your database model classes by taking advantage of a variety of Object Relational Mapping >(OR/M) tools including LINQ to sql,Subsonic,and NHibernate.”
但是,为了保持一致性,我想在单声道上使用Microsoft Entity Framework,如果可能的话.
解决方法
c# – 使用MSBuild构建.csproj而不使用项目引用
例如,没有.sln引用的命令行MSBuild:
msbuild helloworld.csproj /t:Build /verbosity:detailed
或.csproj给出.sln:
<MSBuild Projects="mysolution.sln" Targets="My_Project_File" Properties="Configuration=$(Configuration);Platform=$(Platform)" ContinueOnError="false" />
我没有找到任何提及在没有.sln的MSBuild文件中构建.csproj的引用.有没有办法,我只是缺少一些东西?
解决方法
<MSBuild Projects="my_project.csproj" Targets="Build" />
此外,当您使用Visual Studio构建解决方案时,它在内部实际执行的操作是将解决方案文件转换为包含类似上述行的msbuild脚本来构建项目.
关于c# – 使用Microsoft.Build.Evaluation(而不是Engine)修改编程csproj文件和c# helpprovider的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于.net – 如何在使用Microsoft.Build.Evaluation(MSBuild)构建之前执行清理、asp.net – 在Microsoft Ajax中伪造__EVENTVALIDATION、asp.net-mvc – 在Mono 2.4上使用Microsoft Data Entity Framework和Microsoft MVC、c# – 使用MSBuild构建.csproj而不使用项目引用的相关知识,请在本站寻找。
本文标签: