最近、ページで値を渡すときに問題が発生しました。問題は復元されました。使用する暗号ページ外。データ バインディング コードは次のとおりです。
<span style="font-size:18px;"><SOA:DeluxeObjectDataSourcerunat="server" EnablePaging="True"ID="DataSourceServicePack" TypeName="SinoOcean.Seagull2.TransactionData.PlanManage.ReportHelper.GenerrateKeyPointAchievingRateOfServicepack()"/>页面传值代码如下:<asp:HyperLinkFieldDataNavigateUrlFields="PlanCode,PlanVersionStartTime,beginTime,endTime"DataNavigateUrlFormatString="DelayKeyPointTaskOfServicePack.aspx?PlanCode={0}&PlanVersionStartTime={1}&beginTime={2}&endTime={3}" Target="_blank" Text="查看" HeaderText="查看"/></span>
コードを実行した後、分析により、ページ上のハイパーリンク ボタンがクリックできない状態であることが判明しました。 time パラメータを削除すると、このボタンが使用可能になるのはなぜでしょうか。 Baidu によると、データ ソースをバインドするとき、アドレス バーの時間形式が「yyyy-MM-dd HH:mm:ss.fff」だったことが判明しました。特殊記号を認識できないため、このリンクはクリックできません。形式の変更は難しくないので、そのまま渡しても良いでしょうか?早速起動して試してみたところ、「yyyy/MM/dd HH/mm/ss.fff」に変更できましたが、値の転送問題は解決しましたが、また新たな問題が発生しました。データ送信に成功した後、フォーマット後も正常にクエリができないことがわかりました。どうすればよいでしょうか。新しいページに変更して戻します。
Baidu の続きで、文字列を分割して変換する方法を見つけました。まず、文字列を複数の部分に分割し、個別に変換します。
私の文字列は 2 つの部分に分かれています。最初の部分は日付の途中の特殊文字を横方向の短い行に変換する必要があります。変換方法が異なるためです。それらを別々に。ページ上でページの値を渡す際に、文字列送信形式を「yyyy/mm/dd ThH/MM/ss.fff」形式に置き換えた後、区切り文字であるTに従って2つに分割して文字列変換します。コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード、コード。
<span style="font-size:18px;">stringversionStartTime =WebUtility.GetRequestQueryString("PlanVersionStartTime",""); if (versionStartTime !="") { string ss =versionStartTime.Split('T')[0].ToString(); string ee =versionStartTime.Split('T')[1].ToString(); versionStartTime =ss.Replace('/', '-') + " " + ee.Replace('/', ':'); }</span>