Вы можете использовать createStyle
в пакете openxlsx
.
library(openxlsx)
# sample data
my_data <- data.frame(nam1 = 1:12, nam2 = month.abb, stringsAsFactors = FALSE)
# create workbook
wb <- createWorkbook()
# add Excel sheet
addWorksheet(wb, "A")
# create style, in this case bold header
header_st <- createStyle(textDecoration = "Bold")
# Write data with header style defined above
writeData(wb, "A", my_data, headerStyle = header_st)
# save to .xlsx file
saveWorkbook(wb, "test.xlsx")
Членство ASP.NET использует модель поставщика. Это означает, что Вы абсолютно свободны реализовать своего собственного поставщика членства, или даже наследоваться и расширить существующего поставщика, пока Вы следуете контракту поставщика.
Плюс один для того, чтобы спросить о существующих альтернативах вместо того, чтобы пытаться создать что-то новое самостоятельно, все же.
Поскольку модель членства ASP.NET создается вокруг Поставщиков, существует много доступных альтернатив.
По умолчанию у пользователей есть ProviderUserKey, который является GUID, и это - Первичный ключ базы данных, таким образом, необходимо смочь записать что-то для изменения их имени пользователя, если Вы хотите.
С точки зрения профиля, да, блоб по умолчанию является довольно раздражающим. Вы могли смотреть на Поставщика Профиля Таблицы SQL, который отображает профили на таблицах или справедливо быстро самокрутку.
Что касается Профиля там существует несколько альтернатив. Эти два используют или таблицу или позволяют Вам назвать хранимую процедуру. Конечно, можно также реализовать собственное. Я лично устал от использования Поставщиков Профиля и нашел, что контактом с профилем в моем коде было легче управлять и содержать.
Что касается других проблем, можно также реализовать собственного поставщика. Microsoft выпустила исходный код Поставщикам SQL, таким образом, она может дать Вам начальную точку.
До изменения имени пользователя идет, который может легко быть выполнен при помощи CreateNewUser () метод и заполнение соответствующих полей на основе текущего Пользователя и затем удаления текущего пользователя.
Поля профиля не являются частью модели Membership Provider.NET, но частью Поставщика Профиля. Это - высоко обсужденная тема и для большинства производственных машин, корректным способом пойти является к вклиниванию сигнала лучшее решение поставщика профиля, такое как этот Поставщик Профиля Таблицы, который хранит поля профиля, как Вы ожидали бы, а не как блоб памяти-hogging. С другой стороны, можно легко прокрутить собственного поставщика профиля, проверить инструкции здесь.
Существуют, конечно, альтернативы Членства.NET, но большинство - багги или имеет маленький featureset. Это действительно сосет, чтобы разработать сверху одного в течение двух месяцев и затем понять, что это не будет поддерживать всю функциональность, в которой Вы нуждаетесь. Членство.NET является проверенным решением, и вот почему оно используется так часто.