小编ele*_*tor的帖子

德尔福Singleton模式

我知道这在社区的各个地方都被讨论了很多次,但我在Delphi中找不到一个简单的单例模式实现.我在C#中有一个例子:

public sealed class Singleton {
  // Private Constructor
  Singleton( ) { }

  // Private object instantiated with private constructor
  static readonly Singleton instance = new Singleton( );

  // Public static property to get the object
  public static Singleton UniqueInstance {
    get { return instance;}
}
Run Code Online (Sandbox Code Playgroud)

我知道在Delphi中没有像这样优雅的解决方案,我看到很多关于无法在Delphi中正确隐藏构造函数的讨论(使其成为私有),因此我们需要覆盖NewInstance和FreeInstrance方法.我相信这是我在http://ibeblog.com/?p=65上找到的实现:

type
TTestClass = class
private
  class var FInstance: TTestClass;
public                              
  class function GetInstance: TTestClass;
  class destructor DestroyClass;
end;

{ TTestClass }
class destructor TTestClass.DestroyClass;
begin
  if Assigned(FInstance) then
  FInstance.Free;
end;

class …
Run Code Online (Sandbox Code Playgroud)

delphi singleton design-patterns

22
推荐指数
4
解决办法
2万
查看次数

JQuery val()返回空字符串

这非常令人费解,我甚至不确定我应该在这里发布什么代码.然而问题很简单.我在JQuery模式对话框中有一个表单,我在做一些价格计算.其中,我有一个字段折扣.呈现为:

<div class="editor-label">
    @Html.LabelFor(model => model.Discount)
</div>
<div class="editor-field">
    @Html.EditorFor(model => model.Discount, new { size = 10 })
</div>
Run Code Online (Sandbox Code Playgroud)

我在Firebug调试器DOM选项卡中看到,该字段的值为20.当然,它在表单上可见.但是打电话:

 $('#Discount').val()
Run Code Online (Sandbox Code Playgroud)

返回一个空字符串.这是唯一存在这个问题的领域.为其他字段调用val()会返回正确的值.即使单击提交和调试提交的模型的MVC操作,我也看到了Discount的值.只是JQuery函数返回一个空字符串,仅用于该字段.

我知道这是一个抽象的问题,但有没有人有这样的经历?

谢谢

生成的HTML:

<div class="editor-label">
  <label for="Discount">Popust (%)</label>
</div>
<div class="editor-field">
  <input id="Discount" class="text-box single-line valid" type="text" value="0" name="Discount" data-val-range-min="0" data-val-range-max="100" data-val-range="Vredonst mora biti izmedju 0 i 100" data-val-number="Polje Popust (%) mora biti broj" data-val="true" size="10">
</div>
Run Code Online (Sandbox Code Playgroud)

Firebug中用于此元素的DOM选项卡显示值:"20"

string jquery return

15
推荐指数
1
解决办法
2万
查看次数

用于存储枚举的列表类?

我应该用什么列表类型来存储枚举值?我已尝试使用TObjectList,我强制转换为TObject以添加值,但在从列表中读取时无法将其强制转换为枚举.

你用什么列表来存储枚举?

delphi enums list delphi-2007

8
推荐指数
2
解决办法
1393
查看次数

找不到CrystalImageHandler.aspx

我在MVC3应用程序中的普通ASP.NET aspx页面上使用Crystal报表查看器.在控制器操作中,我只是重定向到aspx页面,报告显示正常.但问题在于动态图像.我找到了最简单的解决方案,将图像路径作为报表参数传递,并将此参数设置为图像源.在Visual Studio预览中,这工作正常但在执行时我在页面上看到此错误.

"NetworkError:404 Not Found - server /ReportWebForms/CrystalImageHandler.aspx?dynamicimage=cr_tmp_image_4fbcb73a-e001-4365-84fc-164788dd1605.png"

所以我假设,以前没有水晶报告的经验,问题出在CrystalImageHandler.aspx中.我在Web.config中有这些条目:

  <httpHandlers><add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/></httpHandlers></system.web>
  <handlers><add name="CrystalImageHandler.aspx_GET" verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" preCondition="integratedMode"/></handlers></system.webServer>
Run Code Online (Sandbox Code Playgroud)

这是MVC类型的问题吗?有人可以帮忙吗?

谢谢

asp.net-mvc report crystal-reports

6
推荐指数
3
解决办法
1万
查看次数

FileHelpers 在字段中引用和逗号

我有一个 csv 文件,我正在使用 FileHelpers 进行解析,并且我遇到了引号和逗号都可以出现在字段中的情况:

逗号:

323,"PC","28/02/2014","UNI001","5000",0,"Return","Returned Goods, damaged",88.00,15.40,"T1","N",0.00,"R","-",
Run Code Online (Sandbox Code Playgroud)

引用

 148,"SI","13/01/2014","CGS001","4000",1,"5","17" Monitor",266.00,45.39,"T1","Y",311.39,"R","-", 
Run Code Online (Sandbox Code Playgroud)

我的班级是:

[DelimitedRecord(",")]
public class Transaction
{
    public int TRAN_NUMBER;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string TypeText;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string DATE;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string TransactionAccount;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string NOMINAL_CODE;

    public int DEPT_NUMBER;

    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string INV_REF;

    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string DETAILS;

    public string NET_AMOUNT;
    public string TAX_AMOUNT;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string TaxCodeName;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string PAID_FLAG;

    public string AMOUNT_PAID;

    [FieldQuoted('"', QuoteMode.OptionalForBoth)]
    public string VatReconText;
    [FieldQuoted('"', QuoteMode.OptionalForBoth)] …
Run Code Online (Sandbox Code Playgroud)

c# filehelpers comma double-quotes

6
推荐指数
1
解决办法
1957
查看次数

Delphi - 代理设计模式 - 接口问题

嗨我正在尝试在Delphi中设计模式,因为我在Delphi中找不到我喜欢的参考资料,我正在转换我在O'Reilly C#3.0设计模式书中的模式.但这不是问题.我已经从本书中创建了代理模式,但是有一些Delphi接口,构造函数和析构函数以及一般对象生命周期和行为的概念,我显然不明白.首先,我将发布我的代码:

unit Unit2;  

interface  

uses
  SysUtils;

type
  ISubject = interface
  ['{78E26A3C-A657-4327-93CB-F3EB175AF85A}']
  function Request(): string;
end;

  TSubject = class
  public
    function Request(): string;
    constructor Create();
  end;

  TProxy = class (TInterfacedObject, ISubject)
  private
    FSubject: TSubject;
  public
    function Request(): String;
    destructor Destroy(); override;
  end;

  TProtectionProxy = class (TInterfacedObject, ISubject)
  private
    FSubject: TSubject;
    FPassword: String;
  public
    constructor Create();
    destructor Destroy(); override;
    function Authenticate(supplied: String): String;
    function Request(): String;
  end;

implementation

{ TSubjectAccessor.TProxy }

destructor TProxy.Destroy;
begin
  if Assigned(Self.FSubject) then
    FreeAndNil(Self.FSubject);
  inherited;
end;

function …
Run Code Online (Sandbox Code Playgroud)

delphi oop design-patterns interface

5
推荐指数
1
解决办法
1596
查看次数

OAuth Java中的经过身份验证的请求

如果有人在此代码中使用http://oauth.googlecode.com/svn/code/java/core/和示例服务器的经验,也许您可​​以向我解释如何实现Authenticated Requests处理?参考:http://tools.ietf.org/html/rfc5849#section-3

因此,当用户通过身份验证并且受保护的资源服务器只想确认针对OAuth提供程序的真实性时.

java authentication oauth request

5
推荐指数
1
解决办法
331
查看次数

Delphi - 从类和接口继承(适配器模式)?

我正在尝试执行GoF适配器模式,并且在C#示例中,我遵循Adapter类继承原始类和适配接口.在Delphi(2007)中,据我所知,这是不可能的,或者是这样吗?如果一个类继承了一个接口,它需要从TInterfacedObject继承,因为Delphi不允许多个类继承,这就是故事的结尾.我无法同时从自定义类和接口继承.

我对么?

谢谢.

我在http://delphipatterns.blog.com/2011/02/22/decorator-5/上实现了这种模式

delphi inheritance interface delphi-2007

4
推荐指数
1
解决办法
2493
查看次数

delphi原型模式

我想知道,Delphi的RTTI中是否有与MemberwiseClone在C#中执行相同操作的原型模式的简单实现.我看到了这个模式的一些Delphi实现,其中正在创建一个新对象(TMyObject.Create),并且它的属性使用原型对象的值进行分配.我可能错了,但是如果我们以相同的基本方式创建对象,我看不到模式的好处.

谢谢.

delphi design-patterns delphi-2007 prototype-pattern

4
推荐指数
2
解决办法
2058
查看次数

从“编辑”视图返回的ASP.NET MVC 4模型属性值丢失

我有一个没有脚手架的DateCreated值的模型。进入GET Edit控制器操作,我看到该模型具有传递给Edit视图的正确值。从视图的POST方法返回,DateCreated的值是默认的DateTime。迷路了 有人知道为什么吗?控制器和视图是脚手架。

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Edit(Product product)
    {
        try
        {
            if (ModelState.IsValid)
            {
                product.DateEdited = DateTime.Now;
                db.Entry(product).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
        }
        catch (DataException dex)
        {
            Console.Write(dex.Message);
            ModelState.AddModelError("", reg6.Resources.UnableToSaveChanges);
        }
        return View(product);
    }

@model reg6.Models.Product

@{
    ViewBag.Title = "Edit";
}

<h2>Edit</h2>

@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)

<fieldset>
    <legend>Product</legend>
    <table>
    <tr>
        <td>
            <div class="editor-label">
                @Html.LabelFor(model => model.Name)
            </div>
        </td>
        <td>
            <div class="editor-field">
                @Html.EditorFor(model => model.Name)
                <div>
                    @Html.ValidationMessageFor(model => model.Name)
                </div>
            </div>
        </td>
    <tr>
    <tr>
        <td>
            <div class="editor-label"> …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc model edit

4
推荐指数
1
解决办法
4640
查看次数