Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Sharepoint 2010应用程序页面出现问题_C#_Sharepoint 2010 - Fatal编程技术网

C# Sharepoint 2010应用程序页面出现问题

C# Sharepoint 2010应用程序页面出现问题,c#,sharepoint-2010,C#,Sharepoint 2010,我对c#和sharepoint都相当陌生,有一段非常基本的代码,它的行为出人意料。我显然缺乏一些基本的故障排除技巧,希望有人能给我指出正确的方向 我有一个应用程序页面,有一个按钮和一个标签。我在PageLoad事件中有一些代码,可以从外部列表中检索一些信息,效果很好。我在返回错误的按钮中有一个代码的精确副本。我想知道,当pageload事件中的相同代码看起来很好、很漂亮时,为什么按钮会返回错误 C#代码: 使用系统; 使用Microsoft.SharePoint; 使用Microsoft.Sha

我对c#和sharepoint都相当陌生,有一段非常基本的代码,它的行为出人意料。我显然缺乏一些基本的故障排除技巧,希望有人能给我指出正确的方向

我有一个应用程序页面,有一个按钮和一个标签。我在PageLoad事件中有一些代码,可以从外部列表中检索一些信息,效果很好。我在返回错误的按钮中有一个代码的精确副本。我想知道,当pageload事件中的相同代码看起来很好、很漂亮时,为什么按钮会返回错误

C#代码:

使用系统;
使用Microsoft.SharePoint;
使用Microsoft.SharePoint.WebControl;
使用系统文本;
命名空间farmBDCProj2.Layouts.farmBDCProj2
{
公共部分类TestGetInfo:LayoutsPageBase
{
受保护的无效页面加载(对象发送方、事件参数e)
{
StringBuilder输出=新的StringBuilder();
output.Append(“由PageLoad事件生成”);
SPContext context=SPContext.Current;
使用(SPSite site=context.site)
使用(SPWeb=site.AllWebs[“BDC_SQL”])
{
SPList list=web.Lists[“BDC_SQL”];
foreach(list.Items中的SPListItem项)
{
AppendFormat(“
项:{0}”,项[“ADName”]); } } Label1.Text=output.ToString(); } 公共无效btn_单击(对象发送者,事件参数e) { StringBuilder输出=新的StringBuilder(); output.Append(“由按钮点击事件生成”); SPContext context=SPContext.Current; 使用(SPSite site=context.site) 使用(SPWeb=site.AllWebs[“BDC_SQL”]) { SPList list=web.Lists[“BDC_SQL”]; foreach(list.Items中的SPListItem项) { AppendFormat(“
项:{0}”,项[“ADName”]); } } Label1.Text=output.ToString(); } } }
ASPX页面:

<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestGetInfo.aspx.cs" Inherits="farmBDCProj2.Layouts.farmBDCProj2.TestGetInfo" DynamicMasterPageFile="~masterurl/default.master" %>

<asp:Content ID="PageHead" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server">

</asp:Content>

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">
    <asp:Button ID="Button1" runat="server" Text="Click Here" OnClick="btn_click" />
    <br />
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</asp:Content>

<asp:Content ID="PageTitle" ContentPlaceHolderID="PlaceHolderPageTitle" runat="server">
Application Page
</asp:Content>

<asp:Content ID="PageTitleInTitleArea" ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea" runat="server" >
My Application Page
</asp:Content>


应用页面 我的申请页面
我得到的错误在btn_click事件的“foreach”阶段,错误文本如下:

Microsoft.SharePoint.SPException was unhandled by user code
  Message=Access denied by Business Data Connectivity.
  Source=Microsoft.SharePoint
  ErrorCode=-2146232832
  StackTrace:
       at Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
       at Microsoft.SharePoint.SPListDataSource.GetFilteredEntityInstancesInternal(XmlDocument xdQueryView, Boolean fFormatDates, Boolean fUTCToLocal, String firstRowId, Boolean fBackwardsPaging, String& bdcidFirstRow, String& bdcidNextPageRow, List`1& lstColumnNames, Dictionary`2& dictColumnsUsed, List`1& mapRowOrdering, List`1& lstEntityData)
       at Microsoft.SharePoint.SPListDataSource.GetFilteredEntityInstances(XmlDocument xdQueryView, Boolean fFormatDates, Boolean fUTCToLocal, String firstRowId, Boolean fBackwardsPaging, String& bdcidFirstRow, String& bdcidNextPageRow, List`1& lstColumnNames, Dictionary`2& dictColumnsUsed, List`1& mapRowOrdering, List`1& lstEntityData)
       at Microsoft.SharePoint.SPListItemCollection.EnsureEntityDataViewAndOrdering(String& bdcidFirstRow, String& bdcidNextPageFirstRow)
       at Microsoft.SharePoint.SPListItemCollection.EnsureListItemsData()
       at Microsoft.SharePoint.SPListItemCollection.get_Count()
       at Microsoft.SharePoint.SPEntityInstanceEnumerator.System.Collections.IEnumerator.MoveNext()
       at farmBDCProj2.Layouts.farmBDCProj2.TestGetInfo.btn_click(Object sender, EventArgs e)
       at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
       at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
       at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
  InnerException: Microsoft.BusinessData.Infrastructure.AccessDeniedException
       Message=Access denied by Business Data Connectivity.
       Source=Microsoft.SharePoint
       StackTrace:
            at Microsoft.SharePoint.BusinessData.Runtime.DataClassRuntime.ExecuteInternal(IDataClass thisDataClass, ILobSystemInstance lobSystemInstance, ILobSystem lobSystem, IMethodInstance methodInstanceToExecute, IMethod methodToExecute, IParameterCollection nonReturnParameters, Object[]& overrideArgs)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteInternal(IDataClass thisDataClass, ILobSystemInstance lobSystemInstance, ILobSystem lobSystem, IMethodInstance methodInstanceToExecute, IMethod methodToExecute, IParameterCollection nonReturnParameters, Object[]& overrideArgs, IFilterCollection filters)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteFiltered(IEntity this, IFilterCollection filterCollection, IMethodInstance methodInstanceToExecute, ILobSystemInstance lobSystemInstance)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.<FindFiltered>b__3(IEntity e, IMethodInstance mi, IFilterCollection fc, ILobSystemInstance lsi)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityInstanceEnumeratorFactory.CreateEntityInstanceEnumerator(IEntity entity, IMethodInstance methodInstance, IFilterCollection filters, ILobSystemInstance lobSystemInstance, ExecutionCallBack executionCallBack)
            at Microsoft.SharePoint.BusinessData.MetadataModel.Static.Entity.FindFiltered(IFilterCollection filterCollection, String finderName, ILobSystemInstance lobSystemInstance)
            at Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
       InnerException: 
Microsoft.SharePoint.SPException未由用户代码处理
消息=访问被业务数据连接拒绝。
Source=Microsoft.SharePoint
错误代码=-2146232832
堆栈跟踪:
位于Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
位于Microsoft.SharePoint.SPListDataSource.GetFiltereIdentityInstancesInternal(XmlDocument xdQueryView、Boolean fFormatDates、Boolean fUTCToLocal、String FirstRow、Boolean fBackwardsPage、String&bdcidFirstRow、String&bdcidNextPageRow、List`1&lstColumnNames、Dictionary`2&dictColumnsUsed、List`1&mapRowOrdering、List`1&lstEntityData)
位于Microsoft.SharePoint.SPListDataSource.GetFiltereIdentityInstances(XmlDocument xdQueryView、Boolean fFormatDates、Boolean fUTCToLocal、String firstRowId、Boolean fBackwardsPage、String&bdcidFirstRow、String&BDCIDNextPagerRow、List`1&LSColumnNames、Dictionary`2&dictColumnsUsed、List`1&mapRowOrdering、List`1&LSEntityData)
在Microsoft.SharePoint.SPListItemCollection.EnsureEntityDataViewAndOrdering(String&bdcidFirstRow,String&bdcidNextPageFirstRow)
在Microsoft.SharePoint.SPListItemCollection.EnsureListItemsData()上
在Microsoft.SharePoint.SPListItemCollection.get_Count()上
在Microsoft.SharePoint.SPEntityInstanceEnumerator.System.Collections.IEnumerator.MoveNext()中
在farmBDCProj2.Layouts.farmBDCProj2.TestGetInfo.btn_单击(对象发送方,事件参数e)
在System.Web.UI.WebControls.Button.OnClick(EventArgs e)中
位于System.Web.UI.WebControl.Button.RaisePostBackEvent(String eventArgument)
位于System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument)
在System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint)
InnerException:Microsoft.BusinessData.Infrastructure.AccessDeniedException
消息=访问被业务数据连接拒绝。
Source=Microsoft.SharePoint
堆栈跟踪:
位于Microsoft.SharePoint.BusinessData.Runtime.DataClassRuntime.ExecuteInternal(IDataClass thisDataClass、ILobSystemInstance lobSystemInstance、ILobSystem lobSystem、IMethodInstance methodInstanceToExecute、IMethodToExecute、IParameterCollection非返回参数、对象[]和重写项)
位于Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteInternal(IDataClass thisDataClass、ILobSystemInstance lobSystemInstance、ILobSystem lobSystem、IMethodInstance methodInstanceToExecute、IMethodToExecute、IPParameterCollection非返回参数、对象[]和重写项、IFilterCollection筛选器)
在Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteFiltered(EntityThis,IFilterCollection filterCollection,IMethodInstance methodInstanceToExecute,ILobSystemInstance lobSystemInstance)
在Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.b__3(客户端e、IMethodInstance mi、IFilterCollection fc、ILobSystemInstance lsi)
位于Microsoft.SharePoint.BusinessData.Runtime.EntityInstanceEnumeratorFactory.CreateEntityInstanceEnumerator(EntityEntity、IMethodInstance methodInstance、IFilterCollection筛选器、ILobSystemInstance lobSystemInstance、ExecutionCallBack ExecutionCallBack)
位于Microsoft.SharePoint.BusinessData.MetadataModel.Static.Entity.FindFiltered(IFilterCollection filterCollection、字符串finderName、ILobSystemInstance lobSystemInstance)
位于Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
Microsoft.SharePoint.SPException was unhandled by user code
  Message=Access denied by Business Data Connectivity.
  Source=Microsoft.SharePoint
  ErrorCode=-2146232832
  StackTrace:
       at Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
       at Microsoft.SharePoint.SPListDataSource.GetFilteredEntityInstancesInternal(XmlDocument xdQueryView, Boolean fFormatDates, Boolean fUTCToLocal, String firstRowId, Boolean fBackwardsPaging, String& bdcidFirstRow, String& bdcidNextPageRow, List`1& lstColumnNames, Dictionary`2& dictColumnsUsed, List`1& mapRowOrdering, List`1& lstEntityData)
       at Microsoft.SharePoint.SPListDataSource.GetFilteredEntityInstances(XmlDocument xdQueryView, Boolean fFormatDates, Boolean fUTCToLocal, String firstRowId, Boolean fBackwardsPaging, String& bdcidFirstRow, String& bdcidNextPageRow, List`1& lstColumnNames, Dictionary`2& dictColumnsUsed, List`1& mapRowOrdering, List`1& lstEntityData)
       at Microsoft.SharePoint.SPListItemCollection.EnsureEntityDataViewAndOrdering(String& bdcidFirstRow, String& bdcidNextPageFirstRow)
       at Microsoft.SharePoint.SPListItemCollection.EnsureListItemsData()
       at Microsoft.SharePoint.SPListItemCollection.get_Count()
       at Microsoft.SharePoint.SPEntityInstanceEnumerator.System.Collections.IEnumerator.MoveNext()
       at farmBDCProj2.Layouts.farmBDCProj2.TestGetInfo.btn_click(Object sender, EventArgs e)
       at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
       at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
       at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
  InnerException: Microsoft.BusinessData.Infrastructure.AccessDeniedException
       Message=Access denied by Business Data Connectivity.
       Source=Microsoft.SharePoint
       StackTrace:
            at Microsoft.SharePoint.BusinessData.Runtime.DataClassRuntime.ExecuteInternal(IDataClass thisDataClass, ILobSystemInstance lobSystemInstance, ILobSystem lobSystem, IMethodInstance methodInstanceToExecute, IMethod methodToExecute, IParameterCollection nonReturnParameters, Object[]& overrideArgs)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteInternal(IDataClass thisDataClass, ILobSystemInstance lobSystemInstance, ILobSystem lobSystem, IMethodInstance methodInstanceToExecute, IMethod methodToExecute, IParameterCollection nonReturnParameters, Object[]& overrideArgs, IFilterCollection filters)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.ExecuteFiltered(IEntity this, IFilterCollection filterCollection, IMethodInstance methodInstanceToExecute, ILobSystemInstance lobSystemInstance)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityRuntime.<FindFiltered>b__3(IEntity e, IMethodInstance mi, IFilterCollection fc, ILobSystemInstance lsi)
            at Microsoft.SharePoint.BusinessData.Runtime.EntityInstanceEnumeratorFactory.CreateEntityInstanceEnumerator(IEntity entity, IMethodInstance methodInstance, IFilterCollection filters, ILobSystemInstance lobSystemInstance, ExecutionCallBack executionCallBack)
            at Microsoft.SharePoint.BusinessData.MetadataModel.Static.Entity.FindFiltered(IFilterCollection filterCollection, String finderName, ILobSystemInstance lobSystemInstance)
            at Microsoft.SharePoint.SPListDataSource.GetEntityInstanceEnumerator(XmlNode xnMethodAndFilters)
       InnerException: