我已经创建了示例应用程序并实现了线程.基本上我的目标是渴望这个应用程序
注意: -我对线程和代理知之甚少,所以请让我知道现有代码的最佳解决方案.
使用文件和控件: - 本演示应用程序中基本上使用了三个文件
ProgressForm.cs(Window Form)包含Button以创建新进度和Container whic将包含所有创建的进度条
ProgressClass.cs 包含动态线程和委托通知UI而不锁定或挂起用户界面
CODE SNIPPET: - 1. ProgressForm .cs
public partial class ProgressForm : Form
{
Random randomMaxValue = new Random();
public ProgressForm()
{
InitializeComponent();
}
private void btnStart_Click(object sender, EventArgs e)
{
ProgressClass m_clsProcess;
ProgressControl progress = new ProgressControl();
progress.StartedAt = DateTime.Now;
progress.MinValue = 0;
progress.CurrentValue = …Run Code Online (Sandbox Code Playgroud) 我将错误转换为实体
public T Add(T entity)
{
CAFMEntities db = new CAFMEntities();
db.TabMasters.AddObject((TabMaster)entity);
db.SaveChanges();
return entity;
}
Run Code Online (Sandbox Code Playgroud)
它给了我一个错误:
无法将类型'T'转换为'CAFM.Data.EntityModel.TabMaster'
谢谢.
我必须创建一个将在预定时间执行的脚本.因为我的客户端不熟悉SQL Server,所以我想根据客户端的要求使用SQL Server Agent计划创建向导在我的计算机上创建计划,然后创建创建计划的脚本(我将发送给客户端) .
如何在不使用SQL Server代理计划创建向导的情况下创建T-SQL作业计划?
我有下面的代码,可以没有任何问题 MAUserController.cs
public class MAUserController : ApiController
{
ILogService loggerService;
IMAUserService _service;
public MAUserController(ILogService loggerService, IMAUserService Service)
{
this.loggerService = loggerService;
this._service = Service;
}
}
Run Code Online (Sandbox Code Playgroud)
DependencyInstaller.cs
public class DependencyInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(
Component.For<ILogService>().ImplementedBy<LogService>().LifeStyle.PerWebRequest,
Component.For<IDatabaseFactory>().ImplementedBy<DatabaseFactory>().LifeStyle.PerWebRequest,
Component.For<IUnitOfWork>().ImplementedBy<UnitOfWork>().LifeStyle.PerWebRequest,
AllTypes.FromThisAssembly().BasedOn<IHttpController>().LifestyleTransient(),
AllTypes.FromAssemblyNamed("ISOS.Health.Service").Where(type => type.Name.EndsWith("Service")).WithServiceAllInterfaces().LifestylePerWebRequest(),
AllTypes.FromAssemblyNamed("ISOS.Health.Repository").Where(type => type.Name.EndsWith("Repository")).WithServiceAllInterfaces().LifestylePerWebRequest()
);
}
}
Run Code Online (Sandbox Code Playgroud)
如果我使用普通的控制器而不是ApiController,那么它会给我一个错误 UserController.cs
public class UserController : Controller
{
ILogService loggerService;
IMAUserService _service;
public UserController(ILogService loggerService, IMAUserService Service)
{
this.loggerService = loggerService;
this._service = Service;
}
} …Run Code Online (Sandbox Code Playgroud) 我有这样的事情:
public void Delete(T entity)
{
Context.DeleteObject(entity);
Context.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
我最终遇到异常:"无法删除该对象,因为在ObjectStateManager中找不到该对象." 如果我尝试使用AttachTo()将实体添加到objectContext,我得到:
"ObjectStateManager中已存在具有相同键的对象.ObjectStateManager无法使用相同的键跟踪多个对象."
怎么了?
例:
namespace CAFM.Data.Repository
{
public abstract class RepositoryBase<T> : IRepository<T>
where T : EntityObject
{
public RepositoryBase()
: this(new CAFMRepositoryContext())
{
}
static RepositoryBase()
{
}
public RepositoryBase(IRepositoryContext repositoryContext)
{
_context = repositoryContext ?? new CAFMRepositoryContext();
_entity = _repositoryContext.ObjectContext.CreateObjectSet<T>();
}
private readonly ObjectContext _context;
private readonly ObjectSet<T> _entity;
protected ObjectContext Context
{
get { return _context; }
}
protected IObjectSet<T> Entity …Run Code Online (Sandbox Code Playgroud) new AjaxUpload($('#addImage'), {
action: 'SaveDataBank.aspx',
name: 'uploadimage',
dataType: 'json',
params: { clientid: GetSelectedClient() }
onSubmit: function (file, ext) {
},
onComplete: function (file, response) {
}
});
Run Code Online (Sandbox Code Playgroud)
我想在打开文件对话框之前执行一些任务.我怎么能更新上面的代码?
更新:
我想通过文件上传动态传递参数.我有一个包含客户ID列表的下拉列表.如果单击"上载"按钮,将打开"文件对话框".然后,我希望它从下拉列表中传入选定的客户端.目前,它只传递最初选择的值.
params: { clientid: GetSelectedClient() },
Run Code Online (Sandbox Code Playgroud)
以上行不符合我的要求.
我创建了以下类:
public static class Current
{
public static class User
{
public static int UserID { get; set; }
public static string UserName { get; set; }
public static List<UserRole> Role { get; set; }
}
public static class UserRole
{
public static int RoleID { get; set; }
public static string RoleName { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
但它会给我一个错误:在这一行
public static List<UserRole> Role { get; set; }
Run Code Online (Sandbox Code Playgroud)
错误1'Framework.Security.Current.UserRole':静态类型不能用作类型参数
我有以下RegExp,它工作正常
var reg = new RegExp(/(.{1,4})/g);
Run Code Online (Sandbox Code Playgroud)
但现在我想用变量名为limit替换4然后它不起作用
var reg = new RegExp("/(.{1,"+ limit +"})/g");
Run Code Online (Sandbox Code Playgroud)
我怎么能在上面的RegExp中使用变量而不是固定值?
asp.net-mvc ×2
c# ×2
.net ×1
asp.net ×1
c#-4.0 ×1
delegates ×1
events ×1
file-upload ×1
generics ×1
javascript ×1
jquery ×1
regex ×1
sql ×1
sql-server ×1
t-sql ×1
winforms ×1