小编Jim*_* G.的帖子

如何在Stackoverflow中创建一个投票上下按钮?

问题

  1. 如何制作一个Ajax按钮(向上和向下箭头),使得数字可以增加或减少
  2. 如何将用户的动作保存到变量NumberOfVotesOfQuestionID

我不确定是否应该使用数据库或不使用数据库.但是,我知道有一种更简单的方法可以节省投票数.

你怎么解决这些问题?

[编辑]

服务器端编程语言是Python.

html javascript python ajax

31
推荐指数
2
解决办法
7138
查看次数

每隔x秒轮询api并做出反应

我必须每隔一两秒钟在屏幕上监控一些数据更新信息.我认为使用此实现的方式:

componentDidMount() {
    this.timer = setInterval(()=> this.getItems(), 1000);
  }

  componentWillUnmount() {
    this.timer = null;
  }

  getItems() {
    fetch(this.getEndpoint('api url endpoint"))
        .then(result => result.json())
        .then(result => this.setState({ items: result }));
  }
Run Code Online (Sandbox Code Playgroud)

这是正确的方法吗?

polling reactjs

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

实体可以访问存储库吗?

我刚刚开始使用DDD,所以这可能是个愚蠢的问题......

是否可以让实体访问存储库(通过某个IRepository接口)在运行时获取值?例如,我想对属性强制执行"默认"选择:

class Person {
    private Company _employer;

    public Company Employer {
        get { return _employer; }
        set { 
            if(value != null) {
                _employer = value;
            } else {
                _employer = employerRepository.GetDefaultEmployer();
            }
        }
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,做这样的事情是对DDD原则的可怕违反.如果不是,我的下一个问题是提供存储库使用的最佳方式是什么?是否应该在创建Person对象时提供?

谢谢,P

domain-driven-design ddd-repositories repository-pattern

25
推荐指数
3
解决办法
7401
查看次数

IntentService不会显示Toast

我创建的这个IntentService将在onStartCommand()和onDestroy()中显示Toasts,但不在onHandleIntent()中显示.我错过了一些关于IntentService限制的内容吗?

public class MyService extends IntentService {

private static final String TAG = "MyService";

public MyService(){
    super("MyService");
}

@Override
protected void onHandleIntent(Intent intent) {
    cycle();
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show(); //This happens!
    return super.onStartCommand(intent,flags,startId);
}

@Override
public void onCreate() {
    super.onCreate();

}

@Override
public void onDestroy() {
    Toast.makeText(this, "service stopping", Toast.LENGTH_SHORT).show(); //This happens!
    super.onDestroy();
}

private void cycle(){
      Toast.makeText(this, "cycle done", Toast.LENGTH_SHORT).show();  //This DOESN'T happen!
      Log.d(TAG,"cycle completed"); //This happens!
} …
Run Code Online (Sandbox Code Playgroud)

android intentservice android-toast

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

合并代码感觉舒服吗?

今天早上,我读了两篇关于重构的意见.

  • 意见1(页面不存在)
  • 意见2(页面不存在)

他们建议将代码分支(并随后合并)到:

  1. 保持行李箱清洁.
  2. 允许开发人员摆脱风险的变化.

根据我的经验(特别是与Borland的StarTeam合作),合并是一种非繁琐的操作.出于这个原因,我只在我必须时(即当我想要冻结候选版本时)进行分支.

从理论上讲,分支是有道理的,但合并的机制使其成为一种非常危险的操作.

我的问题:

  • 合并代码感觉舒服吗?
  • 您是否因为冻结候选版本以外的原因而分支代码?

version-control merge branch

24
推荐指数
5
解决办法
5895
查看次数

课堂上私人成员的目的

在面向对象编程中拥有类/结构的私有/受保护成员的目的是什么?让所有成员公开会有什么危害?

language-agnostic oop class private-members

24
推荐指数
4
解决办法
2612
查看次数

使用asp:FileUpLoad控件上传文件时文件太大

我正在使用asp:FileUpLoad上传文件在我的asp.net c#项目中.只要文件大小不超过允许的最大值,这一切都可以正常工作.超过最大值时.我收到错误" Internet Explorer cannot display the webpage".问题是try catch块没有捕获错误所以我不能给出user a friendly message他们已经删除了允许的大小.我在搜索网页时看到过这个问题,但我找不到合适的解决方案.

我会看看其他控件,但我的管理可能不会购买第三方控件.

根据建议ajac的答案,我需要添加此评论.几个月前我试图加载ajax控件.一旦我使用ajax控件,我就会收到此编译错误.

错误98"System.Web.UI.ScriptControl"类型在未引用的程序集中定义.您必须添加对程序集'System.Web.Extensions,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'的引用.

我可以摆脱它,虽然我添加' System.Web.Extensions'.所以我放弃了Ajax并使用了其他技术.

所以我需要解决这个问题或一个全新的解决方案.

.net c# webforms file-upload

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

SmtpClient:连接尝试失败,因为连接方在一段时间后没有正确响应

在Visual Studio 2008中使用C#.NET中的电子邮件发送时,我收到以下错误

连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应74.125.53.108:25

但是相同的代码在其他一些PC上工作得很好,但是当我今天测试时它给了我Send()方法错误...我的网络连接也很好,我正在测试电子邮件代码..

以下是我的电子邮件代码

MailMessage mail = new MailMessage();
mail.To.Add(to);
mail.From = new MailAddress(from);
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential("MyUserName@gmail.com",
                                                            "MyPassword");
smtp.EnableSsl = true;
smtp.Send(mail);
Run Code Online (Sandbox Code Playgroud)

可能是这种错误的原因.. ???

c# email gmail smtpclient

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

如何禁用ASP.NET页面中的所有控件?

我在页面中有多个下拉列表,如果用户选择一个禁用全部的复选框,则要禁用所有.到目前为止,我有这个代码,它无法正常工作.有什么建议?

foreach (Control c in this.Page.Controls)
{
    if (c is DropDownList)
        ((DropDownList)(c)).Enabled = false;
}
Run Code Online (Sandbox Code Playgroud)

c# webforms asp.net-controls

21
推荐指数
4
解决办法
7万
查看次数

有没有相当于Haskell'let'的Python

是否有一个类似于Haskell'let'表达式的Python,它可以让我写出如下内容:

list2 = [let (name,size)=lookup(productId) in (barcode(productId),metric(size)) 
            for productId in list]
Run Code Online (Sandbox Code Playgroud)

如果没有,最可读的替代方案是什么?

添加以澄清let语法:

x = let (name,size)=lookup(productId) in (barcode(productId),metric(size))
Run Code Online (Sandbox Code Playgroud)

相当于

(name,size) = lookup(productId)
x = (barcode(productId),metric(size))
Run Code Online (Sandbox Code Playgroud)

但是,第二个版本与列表推导不太相配.

python haskell functional-programming let

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