вы можете использовать ajax для передачи данных в событие нажатия кнопки на другой странице без перенаправления страницы
$(document).ready(function(){
$("#submit2").click(function(){
$.ajax( {
url: "<?php echo site_url();?>Home/get_regiter_data",
method: "POST",
data: $("#registrationForm").serialize(),
dataType: "text",
success: function(strMessage) {
// alert("Registration success");
window.location.href = '<?php echo site_url();?>Login';
// $(".Next-btn-div").hide();
}
});
});
});
Есть более простой способ сделать это. Подробности см. В этом сообщении в блоге: Advanced StructureMap: соединение реализаций с открытыми универсальными типами
public class HandlerRegistry : Registry
{
public HandlerRegistry()
{
Scan(cfg =>
{
cfg.TheCallingAssembly();
cfg.IncludeNamespaceContainingType<FakeRepositories.FakeClientRepository>();
cfg.ConnectImplementationsToTypesClosing(typeof(IRepository<>));
});
}
}
Такой способ позволяет избежать создания собственного ITypeScanner
или соглашений.
Смотрите на это обсуждение от группы пользователей StructureMap: http://groups.google.com/group/structuremap-users/browse_thread/thread/649f5324c570347d
Спасибо Chris, это точно, в чем я нуждался. Для ясности вот то, что я сделал из Вашей ссылки:
Scan(x =>
{
x.TheCallingAssembly();
x.IncludeNamespaceContainingType<FakeRepositories.FakeClientRepository>();
x.With<FakeRepositoryScanner>();
});
private class FakeRepositoryScanner : ITypeScanner
{
public void Process(Type type, PluginGraph graph)
{
Type interfaceType = type.FindInterfaceThatCloses(typeof(IRepository<>));
if (interfaceType != null)
{
graph.AddType(interfaceType, type);
}
}
}