在任何人将此作为重复关闭之前 - 请注意它不是linq或其他数据源问题,我查看了其他stackoverflow帖子,但没有一个是相同的。
这是我的问题:
它非常简单的应用程序ASP.net与C#代码背后没有花哨的东西简单明了,你可以从下面的代码看到:
default.aspx代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%=returVar%>
Default.apsx.cs
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
public string returVar;
protected void Page_Load(object sender, EventArgs e)
{
string n = String.Format("{0}", Request.Form["test"]);
//below we will place the code for ODP.net once the DB connectivity is resolved
if (n.Length == 16)
{
returVar = "Found";
}
else
{
returVar = "Not found";
}
}//Page_Load
}
最后是web.config
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="false"/>
</system.web>
</configuration>
我的开发机器是:赢取32 xp visual studio 2010,运行的服务器是Win 64bit 2008 R2和IIS7.5。
所以当我在桌面上运行此代码时,为什么会出现此错误,它就像一个带有http的通过firefox的魅力,如下所示:
http://localhost:3117/Default.aspx?test=0998989765432345
完全相同的代码失败并附带屏幕截图,有人可以告诉我为什么请提出解决方案。我尝试将解决方案资源管理器中的所有DLL包括在内,即解决方案资源管理器&gt;参考文献&gt; system.core,system.data等...&gt; all set for copy local = true。
仍然没有运气。
请注意我无法在服务器上安装任何额外的组件,我必须部署的内容必须是应用程序的一部分。
答案 0 :(得分:4)
最简单的解决方案,如果其他人遇到这种情况,这就是我如何实现结果
在加载
后打开Visual Studio 2010open explorer - &gt;转到&gt; C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.0
将所需的System.ComponentModel.DataAnnotations.dll复制到您的项目中&#34;参考文献&#34;文件夹选择该引用并在属性集&#34; copy local&#34;为true,一旦你发布它将在你的bin文件夹中,并且不会影响任何服务器上的x32或x64。
希望它可以帮助其他人。
答案 1 :(得分:0)
您是否只安装了.NET 4.0的客户端配置文件版本?您可能需要完整版本。