0

私は VS Studio for Web 2012 でこのサイトに取り組んできました。そのほとんどは HTML と ASP ですが、SourceForge からダウンロードした DayPilot カレンダーを含めました。どうやら、カレンダーを SQL サーバーに DataBind する必要があるようです。これにより、ユーザーはログインしてカレンダーに自分の時間を確保することができます。私はネット上で見つけることができるほぼすべての推奨コードを使用しましたが、カレンダー ページでは機能しないようです。aspx ページと aspx.vb ページ コードは次のとおりです: (aspx ページ)

    <%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master"   AutoEventWireup="false" CodeFile="calendarpg.aspx.vb" Inherits="_Default" %>

    <%@ Register Assembly="DayPilot" Namespace="DayPilot.Web.Ui" TagPrefix="DayPilot" %>

   <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    <script type="text/javascript" src="<%=ResolveUrl("~/Scripts/DayPilot/calendar.js")%>">         
    </script>
    <style type="text/css">
            .auto-style8 {
            font-size: large;
        }
    </style>
    <link type="text/css" rel="stylesheet" href="<%=ResolveUrl("~/Themes/themes.css")%>" />
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    dbo.BasicData
    <DayPilot:DayPilotNavigator ID="DayPilotNavigator1" runat="server" />
    <DayPilot:DayPilotCalendar ID="DayPilotCalendar1" runat="server" Days="7" EventMoveJavaScript="alert('eventMove(e.start(), newEnd')" BackColor="#CCFFFF" DataStartField="null"></DayPilot:DayPilotCalendar>
    <DayPilot:DayPilotScheduler ID="DayPilotScheduler1" runat="server">     
    </DayPilot:DayPilotScheduler>
    <br />
    <h1><strong>Scheduling</strong></h1>
    <span class="auto-style8">Requests are made via the Calendar for each of the respective Sandboxes. 
    A minimum of 24-hour notice is rquired when making a request to allow
    time for preparation of a Sandbox, 
    <br />
    time zone differences, and to resolve any
    scheduling conflicts.
    <br />
    <br />
    The process for booking is similar to booking a conference room.
    <br />
    <br />
    Choose a day and time that is open, for the Sandbox you're interested in using,
    then choose the open hours that work best for your schedule. </span>
    </asp:Content>

(aspx.vb ページ)

Partial Class _Default
Inherits System.Web.UI.Page
'Declaration
Public Event DataBinding As EventHandler

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DayPilotCalendar1.DataSource = getData()
DataBind()
End Sub

Public Function getData() As Data.DataTable
Dim dt As Data.DataTable
dt = New Data.DataTable

dt.Columns.Add("start", GetType(DateTime))
dt.Columns.Add("end", GetType(DateTime))
dt.Columns.Add("name", GetType(String))
dt.Columns.Add("id", GetType(String))

Dim dr As Data.DataRow = dt.NewRow()
dr("id") = 0
dr("start") = Convert.ToDateTime("15:50")
dr("end") = Convert.ToDateTime("15:55")
dr("name") = "Event 1"
dt.Rows.Add(dr)

dr = dt.NewRow()
dr("id") = 1
dr("start") = Convert.ToDateTime("16:00")
dr("end") = Convert.ToDateTime("17:00")
dr("name") = "Event 2"
dt.Rows.Add(dr)

dr = dt.NewRow()
dr("id") = 2
dr("start") = Convert.ToDateTime("16:15")
dr("end") = Convert.ToDateTime("18:45")
dr("name") = "Event 3"
dt.Rows.Add(dr)

Return dt
End Function
End Class

(これは現在の私の Web.Config ページです)

    <using System.Web.Configuration;  />
    <?xml version="1.0" encoding="utf-8"?>
    <!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
    <configuration>
    <connectionStrings>
    <add name="ConnStringDb1" connectionString="DataSource=Win08-SDBX1\SQLExpress;Initial Catalog=aspnetdb;Integrated Security=True" providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
    <compilation debug="true" strict="false" explicit="true" targetFramework="4.5">
      <assemblies>
        <add assembly="Microsoft.VisualBasic, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualC, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualStudio.Tools.Applications.Adapter.v9.0, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualStudio.Tools.Applications.DesignTime.v9.0, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualStudio.Tools.Applications.Hosting.v9.0, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualStudio.Tools.Applications.ProgrammingModel, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
      </assemblies>
    </compilation>
    <httpRuntime targetFramework="4.5" />
    <pages>
      <controls>
        <add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit"  namespace="AjaxControlToolkit" />
      </controls>
     </pages>
    </system.web>
    </configuration>

そのいずれかが理にかなっている場合、またはどこが間違っているかがわかった場合は、コーディングを共有または修正してください。ありがとうございました!

4

2 に答える 2

0

PageLoad によって呼び出される Databind 関数を確認できますか?

C# asp.net アプリケーションで作業していたときに、これに似た問題が発生しました。カードの表を含むデータセットからデータをバインドするメソッドを作成しました。テーブルをロードすると「NullReferenceException was unhandled by user code」がスローされ、テーブルを見ると null 値が保持されていることがわかりました。

デバッグ中に例外がスローされた場合、データ テーブルの保持値として何が表示されますか?

null の場合、テーブルはオブジェクトを参照していません。

于 2013-12-12T16:33:52.783 に答える
0
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DayPilotCalendar1.DataSource = getData()
DataBind()
End Sub

This need to be 

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DayPilotCalendar1.DataSource = getData()
DayPilotCalendar1.DataBind()
End Sub
于 2013-09-05T20:42:39.653 に答える